Dela via


Så här gör du: Använda egenskaperna Modifiers och GenerateMember

När du placerar en komponent i ett Windows-formulär tillhandahålls två egenskaper av designmiljön: GenerateMember och Modifiers. Egenskapen GenerateMember anger när Windows Forms Designer genererar en medlemsvariabel för en komponent. Egenskapen Modifiers är åtkomstmodifieraren som tilldelats den medlemsvariabeln. Om värdet för egenskapen GenerateMember är falsehar värdet för egenskapen Modifiers ingen effekt.

Ange om en komponent är medlem i formuläret

  1. Öppna formuläret i Windows Forms Designer i Visual Studio.

  2. Öppna Toolboxoch placera tre Button kontroller i formuläret.

  3. Ange egenskaperna GenerateMember och Modifiers för varje Button kontroll enligt följande tabell.

    Knappnamn GenereraMedlemsvärde Modifierares värde
    button1 true private
    button2 true protected
    button3 false Ingen ändring
  4. Skapa lösningen.

  5. I Solution Explorerklickar du på knappen Visa alla filer.

  6. Öppna noden Form1 och öppna filen Form1.Designer.vb eller Form1.Designer.cs i Code Editor. Den här filen innehåller den kod som genereras av Windows Forms Designer.

  7. Hitta deklarationerna för de tre knapparna. I följande kodexempel visas de skillnader som anges av egenskaperna GenerateMember och Modifiers.

    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();
    
    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()
    
    // 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.
    
     ' 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.
    

Not

Som standard tilldelar Windows Forms Designer modifieraren private (Friend i Visual Basic) till containerkontroller som Panel. Om din bas UserControl eller Form har en containerkontroll, kommer den inte att tillåta nya underordnade element i ärvda kontroller och formulär. Lösningen är att ändra modifieraren för bascontainerkontrollen till protected eller public.

Se även