Die Entwicklung wizard UI - WPF
Alle in WPF:
Entwicklung eines Assistenten-Anwendung, Benutzer beantworten eine Reihe von einfachen Fragen, bevor Sie gebracht, um die Haupt-app. Die Haupt-app wird dann vorausgefüllt mit den gewonnenen Informationen aus dem Assistenten.
Begonnen habe ich mit einem Fenster, das ich dann geplant, um fügen Sie Benutzersteuerelemente zu. Das main-Fenster sollte der Benutzer die Kontrolle in der ersten Zeile, dann Next-und Previous-Tasten zu Steuern, bewegen Sie sich zwischen den Steuerelementen in der zweiten Reihe. Auf diese Weise konnte ich leicht die Logik zum wechseln zwischen Bildschirmen wie:
WizardControl1.IsVisible = false;
WizardControl2.IsVisible = true;
Aber für einige Grund -, Benutzer-Steuerelemente nicht Trendsetter für die IsVisible. Hurra.
So, dann dachte ich, ich würde nur verwenden Sie separate Fenster für jeden Abschnitt des Assistenten. Das problem bei diesem Ansatz ist, dass jetzt wenn man zwischen das Fenster öffnet in zufälligen Positionen, und durch steppign durch den Assistenten mit weiter wird das nächste Fenster öffnet sich zufällig das ist wirklich störend und frustrierend.
Also, wie kann ich entwickeln ein Assistent richtig? Ich verstehe nicht, warum dies so schwer...nicht gerade rocket science... ersetzen von text und Steuerelemente und speichern die Eingabe nach drücken der " Nächster/vorheriger!
Dank
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich würde wahrscheinlich Leitbild dieses mittels data binding und template-Selektoren. Den Assistenten für die form binden, um eine "WizardData" - Klasse stellt eine Liste der "WizardPage" Basis-Klassen.
Den WizardData Klasse verfügbar machen kann Eigenschaften definieren die korrekten Informationen auf die Formulare und zeigen einen regler für die main-Seite verwendet ein template Selektor, um zu bestimmen, die eine ordnungsgemäße Kontrolle zur Anzeige basierend auf den tatsächlichen Typ der jeweiligen Seite des Assistenten.
Es klingt nach mehr Arbeit als es ist, wirklich. Es gibt Ihnen auch den Vorteil der guten Trennung zwischen code und Benutzeroberfläche (alle "Arbeit" erledigt ist durch die WizardData und WizardPage-Klassen), und die Fähigkeit zu testen, die Logik unabhängig von der UI.
Ist es auch ein sehr WPF/MVVM Weg der Annäherung an das problem.
Überprüfen Sie diesen link:
http://www.codeproject.com/KB/WPF/InternationalizedWizard.aspx
Dies ist der Artikel über den Aufbau Assistenten in WPF von Josh Smith, es scheint so zu sein, schönes Muster.
Ich fand es hilfreich für mich, hoffe Ihr auch.
Gibt es auch ein open-source - Avalon-Assistent Kontrolle auf codeplex.
Ich erkenne diese nicht direkt auf deine Frage, aber ich dachte, ich würde erwähnen, es als eine mögliche alternative. Ich habe Actipro Wizard-Steuerelement mit Recht gute Ergebnisse, und wenn ich Unterstützung brauchten, waren Sie sehr entgegenkommend. Ich bin nicht verbunden mit Ihnen in keiner Weise; ich möchte nur nicht schreiben zu müssen die Grundlagen zum verwalten eines Assistenten.
Ich war auf der Suche nach einem Assistenten Lösung zu. Ich habe das Bedürfnis, mit Stock, stock WPF-Komponenten so implementiert habe ich den Assistenten mit einem standard-form und einem tab-control.
Ich nur das ausblenden der Registerkarten zur Laufzeit, so gibt es in der IDE. Zur Laufzeit verwenden Sie einfach Zurück, Weiter, Fertig stellen... zum navigieren durch die Reiter Elemente
funktioniert gut