Gewusst wie: Verwenden von Modifizierern und GenerateMember-Eigenschaften

Wenn Sie eine Komponente auf einem Windows Form ablegen, werden von der Entwurfsumgebung die folgenden beiden Eigenschaften bereitgestellt: GenerateMember und Modifiers. Die GenerateMember-Eigenschaft legt fest, wann der Windows Forms-Designer eine Membervariable für eine Komponente generiert. Die Modifiers-Eigenschaft entspricht dem dieser Membervariablen zugewiesenen Zugriffsmodifizierer. Wenn der Wert der GenerateMember-Eigenschaft false lautet, bleibt der Wert der Modifiers-Eigenschaft ohne Wirkung.

Hinweis

Die angezeigten Dialogfelder und Menübefehle können abhängig von den aktiven Einstellungen oder der verwendeten Version von den Beschreibungen in der Hilfe abweichen. Um die Einstellungen zu ändern, klicken Sie im Menü Extras auf Einstellungen importieren und exportieren. Weitere Informationen finden Sie unter Visual Studio-Einstellungen.

So legen Sie fest, ob eine Komponente ein Member des Formulars ist

  1. Öffnen Sie das Formular im Windows Forms-Designer.

  2. Öffnen Sie die Toolbox, und platzieren Sie drei Button-Steuerelemente im Formular.

  3. Legen Sie die GenerateMember-Eigenschaft und die Modifiers-Eigenschaft für jedes Button-Steuerelement entsprechend der folgenden Tabelle fest.

    Schaltflächenname GenerateMember-Wert Modifiziererwert

    button1

    true

    private

    button2

    true

    protected

    button3

    false

    Keine Änderung

  4. Erstellen Sie die Projektmappe.

  5. Klicken Sie im Projektmappen-Explorer auf die Schaltfläche Alle Dateien anzeigen.

  6. Öffnen Sie den Knoten Form1 und dann im Code-Editor die Datei Form1.Designer.vb oder Form1.Designer.cs. Diese Datei enthält den vom Windows Forms-Designer ausgegebenen Code.

  7. Suchen Sie die Deklarationen für die drei Schaltflächen. Im folgenden Codebeispiel werden die Unterschiede veranschaulicht, die aus der Verwendung der GenerateMember-Eigenschaft und der Modifiers-Eigenschaft resultieren.

    Private Sub InitializeComponent()
    
        ' button3 is declared in a local scope, because 
        ' its GenerateMember property is false.
        Dim button3 As System.Windows.Forms.Button
        Me.button1 = New System.Windows.Forms.Button()
        Me.button2 = New System.Windows.Forms.Button()
        button3 = New System.Windows.Forms.Button()
    
    private void InitializeComponent()
    {   
        // button3 is declared in a local scope, because 
        // its GenerateMember property is false.
        System.Windows.Forms.Button button3;
        this.button1 = new System.Windows.Forms.Button();
        this.button2 = new System.Windows.Forms.Button();
        button3 = new System.Windows.Forms.Button();
    
     ' The Modifiers property for button1 is "Private".
     Private button1 As Button
    
     ' The Modifiers property for button2 is "Protected".
     Protected button2 As Button
    
    ' button3 is not a member, because 
    ' its GenerateMember property is false.
    
    // The Modifiers property for button1 is "private".
    private Button button1;
    
    // The Modifiers property for button2 is "protected".
    protected Button button2;
    
    // button3 is not a member, because 
    // its GenerateMember property is false.
    

Hinweis

Standardmäßig weist der Windows Forms-Designer den private-Modifizierer (Friend in Visual Basic) Containersteuerelementen wie Panel zu. Wenn eine UserControl-Basis oder eineForm-Basis ein Containersteuerelement besitzt, akzeptiert sie in den ihr zugeordneten Steuerelementen und Formularen keine untergeordneten Elemente. Die Lösung besteht darin, den Modifizierer des Basiscontainersteuerelements in protected oder public zu ändern.

Siehe auch

Aufgaben

Exemplarische Vorgehensweise: Demonstrieren der visuellen Vererbung
Gewusst wie: Erben von Windows Forms

Referenz

Button

Weitere Ressourcen

Visuelle Vererbung in Windows Forms