Exemplarische Vorgehensweise: Demonstrieren der visuellen Vererbung

Aktualisiert: Juli 2008

Mit der visuellen Vererbung können Sie die Steuerelemente im Basisformular anzeigen und neue Steuerelemente hinzufügen. In dieser exemplarischen Vorgehensweise werden Sie ein Basisformular erstellen und es in eine Klassenbibliothek kompilieren. Diese Klassenbibliothek importieren Sie in ein anderes Projekt und erstellen ein neues Formular, das von dem Basisformular erbt. In dieser exemplarischen Vorgehensweise werden die folgenden Themen behandelt:

  • Erstellen eines Klassenbibliotheksprojekts, das ein Basisformular enthält.

  • Hinzufügen einer Schaltfläche mit Eigenschaften, die von abgeleiteten Klassen des Basisformulars geändert werden können.

  • Hinzufügen einer Schaltfläche, die von Erben des Basisformulars nicht geändert werden kann.

  • Erstellen eines Projekts mit einem Formular, das von BaseForm erbt.

Darüber hinaus werden Sie in dieser Vorgehensweise den Unterschied zwischen privaten und geschützten Steuerelementen in einem geerbten Formular kennen lernen.

Hinweis:

Je nach den aktiven Einstellungen oder der verwendeten Version können die angezeigten Dialogfelder und Menübefehle von den in der Hilfe beschriebenen abweichen. Klicken Sie im Menü Extras auf Einstellungen importieren und exportieren, um die Einstellungen zu ändern. Weitere Informationen finden Sie unter Visual Studio-Einstellungen.

Szenarioschritte

Zunächst muss ein Basisformular erstellt werden.

So erstellen Sie ein Klassenbibliotheksprojekt, das ein Basisformular enthält

  1. Wählen Sie im Menü Datei die Option Neu, und klicken Sie auf Projekt, um das Dialogfeld Neues Projekt zu öffnen.

  2. Erstellen Sie eine Windows Forms-Anwendung mit dem Namen BaseFormLibrary. Weitere Informationen finden Sie unter Gewusst wie: Erstellen eines Windows-Anwendungsprojekts.

  3. Wenn Sie eine Klassenbibliothek anstelle einer Windows Forms-Standardanwendung erstellen möchten, klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf den Projektknoten BaseFormLibrary, und wählen Sie Eigenschaften aus.

  4. Ändern Sie in den Projekteigenschaften den Ausgabetyp von Windows-Anwendung in Klassenbibliothek.

  5. Wählen Sie im Menü Datei die Option Alle speichern, um das Projekt und die Dateien im Standardverzeichnis zu speichern.

In den beiden folgenden Schrittanweisungen werden dem Basisformular Schaltflächen hinzugefügt. Zur Demonstration der visuellen Vererbung weisen Sie den Schaltflächen verschiedene Zugriffsebenen zu, indem Sie ihre Modifiers-Eigenschaften festlegen.

So fügen Sie eine Schaltfläche hinzu, die von Erben des Basisformulars geändert werden kann

  1. Öffnen Sie Form1 im Designer.

  2. Doppelklicken Sie auf der Registerkarte Alle Windows Forms der Toolbox auf Schaltfläche, um eine Schaltfläche in das Formular einzufügen. Verwenden Sie die Maus, um die Schaltfläche zu positionieren und ihre Größe zu ändern.

  3. Richten Sie im Eigenschaftenfenster die folgenden Eigenschaften für die Schaltfläche ein:

    • Geben Sie für die Text-Eigenschaft Hello an.

    • Legen Sie für die (Name)-Eigenschaft den Wert btnProtected fest.

    • Legen Sie für die Modifiers-Eigenschaft den Wert Protected fest. Dadurch können in Formularen, die von Form1 erben, die Eigenschaften von btnProtected geändert werden.

  4. Doppelklicken Sie auf die Schaltfläche Hello, um einen Ereignishandler für das Click-Ereignis hinzuzufügen.

  5. Fügen Sie dem Ereignishandler folgenden Code hinzu.

    MessageBox.Show("Hello, World!")
    
    MessageBox.Show("Hello, World!");
    
    MessageBox.Show("Hello, World!");
    

So fügen Sie eine Schaltfläche hinzu, die nicht von Erben des Basisformulars geändert werden kann

  1. Wechseln Sie in die Entwurfsansicht, indem Sie auf die Registerkarte Form1.vb [Entwurf], Form1.cs [Entwurf] oder Form1.jsl [Entwurf] über dem Code-Editor klicken oder F7 drücken.

  2. Fügen Sie eine zweite Schaltfläche hinzu, und legen Sie ihre Eigenschaften wie folgt fest:

    • Geben Sie für die Text-Eigenschaft Goodbye an.

    • Legen Sie für die (Name)-Eigenschaft den Wert btnPrivate fest.

    • Legen Sie für die Modifiers-Eigenschaft den Wert Private fest. Dadurch ist es in Formularen, die von Form1 erben, nicht möglich, die Eigenschaften von btnPrivate zu ändern.

  3. Doppelklicken Sie auf die Schaltfläche Goodbye, um einen Ereignishandler für das Click-Ereignis hinzuzufügen. Fügen Sie der Ereignisprozedur folgenden Code hinzu:

    MessageBox.Show("Goodbye!")
    
    MessageBox.Show("Goodbye!");
    
    MessageBox.Show("Goodbye!");
    
  4. Wählen Sie im Menü Erstellen die Option BaseFormLibrary erstellen, um die Klassenbibliothek zu erstellen.

    Nachdem die Bibliothek erstellt wurde, können Sie ein neues Projekt erstellen, das von dem soeben erstellten Formular erbt.

So erstellen Sie ein Projekt mit einem Formular, das vom Basisformular erbt

  1. Wählen Sie im Menü Datei die Option Hinzufügen und anschließend Neues Projekt aus, um das Dialogfeld Neues Projekt hinzufügen zu öffnen.

  2. Erstellen Sie eine Windows Forms-Anwendung mit dem Namen InheritanceTest. Weitere Informationen finden Sie unter Gewusst wie: Erstellen eines Windows-Anwendungsprojekts.

So fügen Sie ein geerbtes Formular hinzu

  1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt InheritanceTest, klicken Sie auf Hinzufügen, und wählen Sie dann Neues Element aus.

  2. Wählen Sie im Dialogfeld Neues Element hinzufügen die Kategorie Windows Forms aus (wenn eine Liste von Kategorien vorhanden ist), und wählen Sie anschließend die Vorlage Inherited Form aus.

  3. Übernehmen Sie den Standardnamen Form2, und klicken Sie anschließend auf Hinzufügen.

  4. Das Formular, von dem geerbt werden soll, geben Sie im Dialogfeld Vererbungsauswahl mit Form1 aus dem BaseFormLibrary-Projekt an und klicken auf OK.

    Dadurch wird ein Formular im InheritanceTest-Projekt erstellt, das von dem Formular in BaseFormLibrary abgeleitet wird.

  5. Öffnen Sie das geerbte Formular (Form2) im Designer, indem Sie darauf doppelklicken (sofern es noch nicht geöffnet ist).

    Die geerbten Schaltflächen werden im Designer mit einem Symbol () in der oberen Ecke angezeigt.

  6. Wählen Sie die Schaltfläche Hello, und achten Sie auf die Handles zum Ändern der Größe. Da diese Schaltfläche geschützt ist, können die Erben sie verschieben, ihre Größe oder Beschriftung ändern und andere Änderungen vornehmen.

  7. Wählen Sie die private Schaltfläche Goodbye aus. Sie werden feststellen, dass sie keine Handles zum Ändern der Größe besitzt. Darüber hinaus werden die Eigenschaften dieser Schaltfläche im Eigenschaftenfenster grau unterlegt, um zu verdeutlichen, dass sie nicht geändert werden können.

  8. Bei Verwendung von Visual C#:

    1. Klicken Sie im Projektmappen-Explorer im Projekt InheritanceTest mit der rechten Maustaste auf Form1, und klicken Sie dann auf Löschen. Ein Meldungsfeld wird angezeigt. Klicken Sie auf OK, um den Löschvorgang zu bestätigen.

    2. Öffnen Sie die Datei Program.cs, und löschen Sie die Zeile Application.Run(new Form1());.

    3. Öffnen Sie Form2 in der Codeansicht.

    4. Fügen Sie direkt vor der Zeile public Form2() die folgende Methode hinzu. Dadurch kann Form2 als Startobjekt funktionieren.

      static void Main()
      {
         Application.Run(new Form2());
      }
      

    – oder –

    Bei Verwendung von Visual J#: 

    1. Öffnen Sie Form2 in der Codeansicht.

    2. Fügen Sie die folgende Methode hinzu. Sie stellt den Einstiegspunkt für die InheritanceTest-Anwendung dar.

      // The main entry point for the application.
      /** @attribute System.STAThreadAttribute() */
      public static void main(String[] args) 
      {
         Application.Run(new Form2());
      }
      
  9. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt InheritanceTest, und klicken Sie auf Als Startprojekt festlegen.

  10. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt InheritanceTest, und klicken Sie auf Eigenschaften.

  11. Legen Sie auf den Eigenschaftenseiten von InheritanceTest das Startobjekt als geerbtes Formular (Form2) fest.

  12. Drücken Sie F5, um die Anwendung auszuführen. Achten Sie auf das Verhalten des geerbten Formulars.

Nächste Schritte

Die Vererbung von Benutzersteuerelementen funktioniert ähnlich. Öffnen Sie ein neues Klassenbibliotheksprojekt, und fügen Sie ein Benutzersteuerelement hinzu. Fügen Sie konstituierende Steuerelemente ein, und kompilieren Sie das Projekt. Öffnen Sie ein weiteres neues Klassenbibliotheksprojekt, und fügen Sie einen Verweis auf die kompilierte Klassenbibliothek hinzu. Versuchen Sie außerdem, dem Projekt ein geerbtes Steuerelement (über das Dialogfeld Neues Element hinzufügen) hinzuzufügen, und verwenden Sie das Dialogfeld Vererbungsauswahl. Fügen Sie ein Benutzersteuerelement hinzu, und ändern Sie die Inherits-Anweisung (: in Visual C#). Weitere Informationen finden Sie unter Gewusst wie: Erben von Windows Forms.

Siehe auch

Aufgaben

Gewusst wie: Erben von Windows Forms

Referenz

Dialogfeld "Vererbungsauswahl"

Exemplarische Vorgehensweisen und Gewusst-wie-Themen für Windows Forms

Weitere Ressourcen

Visuelle Vererbung in Windows Forms

Windows Forms

Änderungsprotokoll

Date

Versionsgeschichte

Grund

Juli 2008

Schritte für Visual Studio 2005 und Visual Studio 2008 aktualisiert.

Kundenfeedback.