Udostępnij przez


Porady: stosowanie modyfikatorów i właściwości „GenerateMember"

W przypadku umieszczenia składnika w formularzu systemu Windows dwa właściwości są udostępniane przez środowisko projektowe: GenerateMember i Modifiers. Właściwość GenerateMember określa, kiedy Projektant formularzy systemu Windows generuje zmienną składową dla składnika. Właściwość Modifiers jest modyfikatorem dostępu przypisanym do tej zmiennej składowej. Jeśli wartość GenerateMember właściwości to false, wartość Modifiers właściwości nie ma wpływu.

Określ, czy składnik jest elementem członkowskim formularza

  1. W programie Visual Studio w Projektant formularzy systemu Windows otwórz formularz.

  2. Otwórz przybornik, a następnie w formularzu umieść trzy Button kontrolki.

  3. GenerateMember Ustaw właściwości i Modifiers dla każdej Button kontrolki zgodnie z poniższą tabelą.

    Nazwa przycisku GenerateMember value Wartość modyfikatorów
    button1 true private
    button2 true protected
    button3 false Bez zmian
  4. Stwórz rozwiązanie.

  5. W Eksplorator rozwiązań kliknij przycisk Pokaż wszystkie pliki.

  6. Otwórz węzeł Form1, a następnie w Edytorze kodu otwórz plik Form1.Projektant. vb lub Form1.Projektant. plik cs. Ten plik zawiera kod emitowany przez Projektant Windows Forms.

  7. Znajdź deklaracje dla trzech przycisków. Poniższy przykład kodu przedstawia różnice określone przez GenerateMember właściwości i 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.
    

Uwaga

Domyślnie Projektant formularzy private systemu Windows przypisuje modyfikator (Friendw Visual Basic) do kontrolek kontenerów, takich jak Panel. Jeśli baza UserControl lub Form ma kontrolkę kontenera, nie będzie akceptowała nowych elementów podrzędnych w odziedziczonych kontrolkach i formularzach. Rozwiązaniem jest zmiana modyfikatora kontrolki kontenera podstawowego na protected lub public.

Zobacz też