Como usar os modificadores e as propriedades GenerateMember
Quando você coloca um componente em um Windows Form, duas propriedades são fornecidas pelo ambiente de design: GenerateMember
e Modifiers
. A propriedade GenerateMember
especifica quando o Designer de Formulários do Windows gera uma variável de membro de um componente. A propriedade Modifiers
é o modificador de acesso atribuído a essa variável de membro. Se o valor da propriedade GenerateMember
for false
, o valor da propriedade Modifiers
não terá efeito.
Especificar se um componente é membro do formulário
No Visual Studio, no Windows Forms Designer, abra o formulário.
Abra a Caixa de Ferramentas e, no formulário, coloque três Button controles.
Defina as
GenerateMember
propriedades eModifiers
para cada Button controle de acordo com a tabela a seguir.Nome do botão Valor GenerateMember Valor de modificadores button1
true
private
button2
true
protected
button3
false
Nenhuma alteração Compile a solução.
Em Gerenciador de Soluções, clique no botão Mostrar Todos os Arquivos.
Abra o nó Form1 e no Editor de Códigos, abra o arquivo Form1.Designer.vb ou Form1. Designer.cs. Esse arquivo contém o código emitido pelo Designer de Formulários do Windows.
Localize as declarações dos três botões. O exemplo de código a seguir mostra as diferenças especificadas pelas propriedades
GenerateMember
eModifiers
.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.
Observação
Por padrão, o Windows Forms Designer atribui o private
modificador (Friend
no Visual Basic) a controles de contêiner como Panel. Se sua base UserControl ou Form tiver um controle de contêiner, ele não aceitará novos filhos em controles e formulários herdados. A solução é alterar o modificador da caixa de controles de base para protected
ou public
.
Confira também
.NET Desktop feedback