This project is read-only.

Howto: Erstellen eines mehrstufigen Dialogs

Dieses Dokument beschreibt, wie mit dem InstallerFramework ein mehrstufiger Dialog für ein Setup erstellt werden kann.

Die Komponenten für einen mehrstufigen Dialog befinden sich im InstallerFramwork.Dialog-Namespace. Der eigentliche Dialog befindet sich in der DialogForm-Klasse. Zu diesem Dialog können mehrere Stufen, deren Typ die DialogStep-Klasse ist, hinzugefügt werden. Die standardmäßige Benutzeroberfläche des Dialogs sieht so aus:
DialogForm.png

Erstellen des Dialogs
Um eine Benutzeroberfläche zu erstellen, muss die DialogForm-Klasse abgeleitet werden. Im Konstruktor werden die Stufen zum Dialog (FirstStep und SecondStep) hinzugefügt, dann wird mithilfe der GotoStep-Methode zur ersten Stufe navigiert. Die InitializeComponent-Methode wird in Visual Studio vom Designer erzeugt und enthält die Oberflächengestaltung.

using InstallerFramework.Dialog;

public partial class SetupForm : DialogForm
{
  public SetupForm()
  {
     this.InitializeComponent();

     // Stufen hinzufügen
     this.StepControls.Add(new FirstStep());
     this.StepControls.Add(new SecondStep());

     // Zur ersten Stufe navigieren
     this.GotoStep(0);
  }
}

Dann kann der Text der Navigations-Schaltflächen mit den NextButtonText-, PrevousButtonText-, FinishButtonText- und CancelButtonText-Eigenschaften festgelegt werden. Die Stufen "FirstStep" und "SecondStep" sind von der DialogStep-Klasse abgeleitet. Stufen können wie normale Formulare definiert und mit einem Designer gestaltet werden.

using InstallerFramework.Dialog;

public class FirstStep : DialogStep
{
  public FirstStep()
  {
    this.InitializeComponent();
  }
}

Die Sidebar
Einem Dialog kann eine Sidebar zugewiesen werden, die dauerhaft zu sehen ist. Die Sidebar ist ein normales UserControl, das beliebig gestaltet werden kann. Die Zuweisung erfolgt über die DialogForm.Sidebar-Eigenschaft. Wichtig ist das Festlegen der Dock-Eigenschaft der Sidebar, sie bestimmt ihre Position im DialogForm.

Last edited Jun 4, 2009 at 5:59 PM by root, version 5

Comments

No comments yet.