2009-05-06 6 views
0

Ich schrieb ein Konsolenprogramm in C#, das bis zu drei Dateien als Eingabe nimmt und einige Datenberechnungen an ihnen vornimmt.C# Ein Frontend zu einem Konsolenprogramm machen?

Ich möchte ein einfaches Frontend machen, die dem Benutzer ermöglicht, auf einfache Weise

* Importdateien - im Grunde auf drei Dateien wählen, bis zu

* Ändern von Einstellungen an den Back-End-Code weitergeleitet werden - ich habe ungefähr 10 Einstellungen, die ich gerade in einer app.config-Datei speichere. vielleicht eine einfache Einstellungen Box würde

* sehen, was los ist schön - das Konsolenprogramm zeigt einige Statusmeldungen, die nützlich sein könnten, auf einem GUI

ich praktisch mit Windows Forms oder GUI-Design keine Erfahrung haben, um anzuzeigen, also weiß ich wirklich nicht, wo ich anfangen soll. Ich habe die Backend-Sachen in eine * .dll kompiliert und spiele gerade im Design-Modus von SharpDevelop ... aber ich habe wirklich keine Ahnung, wie man die beiden zusammenbringt.

alle Zeiger würden sehr geschätzt werden!

Antwort

1

Wenn Sie mit dem GUI-Design in .NET beginnen möchten, empfehle ich Ihnen, WPF (Windows Presentation Foundation) zu wählen. Dies ist die neueste Technologie, die im Bereich UI/Grafik von Microsoft veröffentlicht wurde und in der sich jetzt alles abspielt. (Windows Forms wird für eine lange Zeit nicht veraltet sein, obwohl es sicher, aber langsam veraltet wird.) Mir ist jedoch aufgefallen, dass Sie SharpDevelop verwenden, das für WPF noch keine echte Unterstützung bietet (soweit ich weiß), während es für WinForms sicherlich gilt. Wenn Sie Visual Studio verwenden können, empfehle ich Ihnen zunächst, WPF zu lernen. Sie haben den Vorteil, dass Sie nicht durch frühere Erfahrungen mit den Stilen und Methoden von WinForms verwirrt werden, also wäre es der richtige Weg.

Welche auch immer Sie möchten, wäre die Getting Started page of WindowsClient.NET (die offizielle MS-Website für WinForms und WPF) eine große Ressource. Es gibt auch ein paar MSDN articles zum Einstieg mit WPF.

Hoffe, dass hilft.

3

Das übliche Muster in solchen Fällen besteht darin, die Hauptfunktionen der Anwendung in eine Klassenbibliothek aufzunehmen und diese von einer ausführbaren Wrapping-Datei wie einer Konsolenanwendung, Winforms-App oder Webforms-App (wenn möglich) aufzurufen. Auf diese Weise können Sie die Schnittstelle nach Bedarf anpassen und die Ein- und Ausgabe an die Klassenbibliothek einfach weiterleiten.

Edit: Ich weiß, das ist keine sehr eingehende Antwort, aber ich hoffe, es hilft, zumindest mit einer anderen Antwort, die ankommen könnte, zu beginnen.

0

Haben Sie Visual Studio Express-Ausgaben ausprobiert? Sie sind kostenlos und mit einem Designer für WinForms oder WPF-Anwendungen.

Als ersten Schritt benötigen Sie 3 Textbereiche für die Dateinamen, mit zugehörigen Schaltflächen, um den Dialog zum Öffnen der Datei aufzurufen (er öffnet die Datei nicht, sondern gibt nur den Dateinamen zurück).

Ein Label zum Anzeigen des Status - aktualisiert von Ihrem Worker-Code.

Dann entweder die verschiedenen Optionsfelder, Kontrollkästchen usw. für Ihre Konfigurationseinstellungen.

Oh, und vergessen Sie nicht die "Start" -Taste, um Ihren Prozess zu starten.

Wenn Ihr Prozess eine Weile dauert, sollten Sie einen Hintergrund-Worker-Thread verwenden. Sie können dann eine "Abbrechen" -Schaltfläche implementieren, um den Prozess sicher abzubrechen und aufzuräumen, wenn es schief geht.

Es wird Optimierungen und Reorganisationen geben, die Sie tun können, sobald Sie es funktioniert haben.

0

Ihre Frage ist ziemlich undeutlich. Wenn Sie nach der Arbeit mit GUI fragen, sollten Sie ein Buch über Windows Forms lesen. Und wenn Sie fragen, wie Sie Ihre DLL in Ihre neue Windows Forms-Anwendung einfügen, dann sollten Sie nur einen Verweis darauf in winforms-Projekteigenschaften hinzufügen und dann Klassen aus Dll Namespace verwenden.

Verwandte Themen