Partager via


Comment : utiliser les modificateurs et les propriétés GenerateMember

Lorsque vous placez un composant sur un Windows Form, deux propriétés sont fournies par l’environnement de conception : GenerateMember et Modifiers. La GenerateMember propriété spécifie quand le Concepteur Windows Forms génère une variable membre pour un composant. La Modifiers propriété est le modificateur d’accès affecté à cette variable membre. Si la valeur de la GenerateMember propriété est false, la valeur de la Modifiers propriété n’a aucun effet.

Spécifier si un composant est membre du formulaire

  1. Dans Visual Studio, dans le Concepteur Windows Forms, ouvrez votre formulaire.

  2. Ouvrez la boîte à outils et, dans le formulaire, placez trois Button contrôles.

  3. Définissez les propriétés et Modifiers les GenerateMember propriétés de chaque Button contrôle en fonction du tableau suivant.

    Nom du bouton Valeur GenerateMember Valeur des modificateurs
    button1 true private
    button2 true protected
    button3 false Aucun changement
  4. Générez la solution.

  5. Dans l’Explorateur de solutions, cliquez sur le bouton Afficher tous les fichiers.

  6. Ouvrez le nœud Form1 et, dans l’Éditeur de code, ouvrez le fichier Form1.Designer.vb ou Form1.Designer.cs. Ce fichier contient le code émis par le Concepteur Windows Forms.

  7. Recherchez les déclarations des trois boutons. L’exemple de code suivant montre les différences spécifiées par les propriétés et Modifiers les GenerateMember propriétés.

    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.
    

Remarque

Par défaut, le Concepteur Windows Forms affecte le private modificateur (Friend en Visual Basic) aux contrôles de conteneur comme Panel. Si votre base UserControl ou Form dispose d’un contrôle conteneur, il n’accepte pas de nouveaux enfants dans les contrôles et formulaires hérités. La solution consiste à modifier le modificateur du contrôle conteneur de base en protected ou publicen .

Voir aussi