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
W programie Visual Studio w Projektant formularzy systemu Windows otwórz formularz.
Otwórz przybornik, a następnie w formularzu umieść trzy Button kontrolki.
GenerateMember
Ustaw właściwości iModifiers
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 Stwórz rozwiązanie.
W Eksplorator rozwiązań kliknij przycisk Pokaż wszystkie pliki.
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.
Znajdź deklaracje dla trzech przycisków. Poniższy przykład kodu przedstawia różnice określone przez
GenerateMember
właściwości iModifiers
.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 (Friend
w 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ż
.NET Desktop feedback
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla