Ich habe zwei verschiedene WinForms-Anwendungen, AppA & AppB. Auf beiden wird .NET 2.0 ausgeführt.
In AppA möchte ich AppB öffnen, muss aber Befehlszeilenargumente übergeben. Wie verwende ich die Argumente, die ich in der Befehlszeile übergebe?
Dies ist meine aktuelle Hauptmethode in AppB, aber ich glaube nicht, dass Sie dies ändern können?
static void main()
{
}
c#
winforms
command-line
MRFerocius
quelle
quelle
Der beste Weg, um mit Argumenten für Ihre Winforms-App zu arbeiten, ist die Verwendung
Sie können dies wahrscheinlich mit der Verwendung einer Aufzählung koppeln , um die Verwendung des Arrays in Ihrer Codebasis zu festigen.
Gefunden bei: HIER
quelle
main(string[] args)
?Sie können die Befehlszeile jeder .NET-Anwendung abrufen, indem Sie auf die Eigenschaft Environment.CommandLine zugreifen. Die Befehlszeile wird als einzelne Zeichenfolge angezeigt, aber das Parsen der gesuchten Daten sollte nicht besonders schwierig sein.
Eine leere Main-Methode hat keine Auswirkungen auf diese Eigenschaft oder die Fähigkeit eines anderen Programms, einen Befehlszeilenparameter hinzuzufügen.
quelle
Stellen Sie sich vor, Sie müssen ein Programm entwickeln, über das Sie zwei Argumente übergeben müssen. Zunächst müssen Sie die Program.cs- Klasse öffnen und wie unten in der Main- Methode Argumente hinzufügen und diese Argumente an den Konstruktor des Windows-Formulars übergeben.
Fügen Sie in der Windows-Formularklasse einen parametrisierten Konstruktor hinzu, der die Eingabewerte der Programmklasse wie folgt akzeptiert .
Um dies zu testen, können Sie die Eingabeaufforderung öffnen und zu dem Speicherort gehen, an dem sich diese Exe befindet. Geben Sie den Dateinamen und dann parmeter1 parameter2 an. Zum Beispiel siehe unten
Aus dem obigen C # -Code wird eine Messagebox mit Wert angezeigt
p10 5
.quelle
Sie verwenden diese Signatur: (in c #) static void Main (string [] args)
Dieser Artikel kann auch dazu beitragen, die Rolle der Hauptfunktion bei der Programmierung zu erläutern: http://en.wikipedia.org/wiki/Main_function_(programming)
Hier ist ein kleines Beispiel für Sie:
quelle
Dies ist möglicherweise nicht für alle eine beliebte Lösung, aber ich mag das Application Framework in Visual Basic, selbst wenn C # verwendet wird.
Fügen Sie einen Verweis auf hinzu
Microsoft.VisualBasic
Erstellen Sie eine Klasse mit dem Namen WindowsFormsApplication
Ändern Sie Ihre Main () - Routine so, dass sie so aussieht
Diese Methode bietet einige zusätzliche nützliche Funktionen (wie SplashScreen-Unterstützung und einige nützliche Ereignisse).
quelle