Gewusst wie: Erstellen von Eigenschaftenrastern für Benutzereinstellungen in Visual BasicHow to: Create Property Grids for User Settings in Visual Basic

Sie können ein Eigenschaftenraster für Benutzereinstellungen erstellen, indem Sie ein PropertyGrid-Steuerelement mit den Benutzereinstellungseigenschaften des My.Settings-Objekts auffüllen.You can create a property grid for user settings by populating a PropertyGrid control with the user setting properties of the My.Settings object.

Hinweis

Damit dieses Beispiel funktioniert, muss Ihre Anwendung über konfigurierte Benutzereinstellungen verfügen.In order for this example to work, your application must have its user settings configured. Weitere Informationen finden Sie unter Verwalten von Anwendungseinstellungen (.NET).For more information, see Managing Application Settings (.NET).

Das My.Settings-Objekt macht jede Einstellung als Eigenschaft verfügbar.The My.Settings object exposes each setting as a property. Der Eigenschaftenname ist identisch mit dem Einstellungsnamen, und der Eigenschaftentyp entspricht dem Typ der Einstellung.The property name is the same as the setting name, and the property type is the same as the setting type. Der Bereich der Einstellung gibt an, ob die Eigenschaft schreibgeschützt ist; die Eigenschaft für den Bereich Anwendung ist schreibgeschützt, während die Eigenschaft für die Bereichseinstellung Benutzer über einen Lese-/Schreibzugriff verfügt.The setting's Scope determines if the property is read-only; the property for an Application-scope setting is read-only, while the property for a User-scope setting is read-write. Weitere Informationen finden Sie unter My.Settings-Objekt.For more information, see My.Settings Object.

Hinweis

Sie können die Werte der Einstellungen für den Anwendungsbereich zur Laufzeit nicht ändern oder speichern.You cannot change or save the values of application-scope settings at run time. Einstellungen für den Anwendungsbereich können nur geändert werden, wenn Sie die Anwendung (über den Projekt-Designer) erstellen, oder indem Sie die Anwendungskonfigurationsdatei bearbeiten.Application-scope settings can be changed only when creating the application (through the Project Designer) or by editing the application's configuration file. Weitere Informationen finden Sie unter Verwalten von Anwendungseinstellungen (.NET).For more information, see Managing Application Settings (.NET).

Dieses Beispiel verwendet ein PropertyGrid-Steuerelement, um auf die Benutzereinstellungseigenschaften des My.Settings-Objekts zuzugreifen.This example uses a PropertyGrid control to access the user-setting properties of the My.Settings object. In der Standardeinstellung zeigt PropertyGrid alle Eigenschaften des My.Settings-Objekts an.By default, the PropertyGrid shows all the properties of the My.Settings object. Die Eigenschaften von Benutzereinstellungen müssen jedoch das UserScopedSettingAttribute-Attribut aufweisen.However, the user-setting properties have the UserScopedSettingAttribute attribute. In diesem Beispiel wird die BrowsableAttributes-Eigenschaft von PropertyGrid auf UserScopedSettingAttribute festgelegt, um nur die Eigenschaften von Benutzereinstellungen anzuzeigen.This example sets the BrowsableAttributes property of the PropertyGrid to UserScopedSettingAttribute to display only the user-setting properties.

So fügen Sie ein Eigenschaftenraster für Benutzereinstellungen hinzuTo add a user setting property grid

  1. Fügen Sie das PropertyGrid-Steuerelement aus der Toolbox der Entwurfsoberfläche für Ihre Anwendung hinzu, von der davon ausgegangen wird, dass sie Form1 ist.Add the PropertyGrid control from the Toolbox to the design surface for your application, assumed here to be Form1.

    Der Standardname für das Steuerelement des Eigenschaftenrasters ist PropertyGrid1.The default name of the property-grid control is PropertyGrid1.

  2. Doppelklicken Sie auf die Entwurfsoberfläche für Form1, um den Code für den Ereignishandler zum Laden von Formularen zu öffnen.Double-click the design surface for Form1 to open the code for the form-load event handler.

  3. Legen Sie das My.Settings-Objekt als ausgewähltes Objekt für das Eigenschaftenraster fest.Set the My.Settings object as the selected object for the property grid.

    PropertyGrid1.SelectedObject = My.Settings
    
  4. Konfigurieren Sie das Eigenschaftenraster so, dass nur die Benutzereinstellungen angezeigt werden.Configure the property grid to show only the user settings.

    ' Attribute for the user-scope settings.
    Dim userAttr As New System.Configuration.UserScopedSettingAttribute
    Dim attrs As New System.ComponentModel.AttributeCollection(userAttr)
    PropertyGrid1.BrowsableAttributes = attrs
    

    Hinweis

    Um nur die Einstellungen des Anwendungsbereichs anzuzeigen, verwenden Sie das ApplicationScopedSettingAttribute-Attribut anstelle von UserScopedSettingAttribute.To show only the application-scope settings, use the ApplicationScopedSettingAttribute attribute instead of UserScopedSettingAttribute.

Stabile ProgrammierungRobust Programming

Die Anwendung speichert die Benutzereinstellungen beim Herunterfahren der Anwendung.The application saves the user settings when the application shuts down. Um die Einstellungen sofort zu speichern, rufen Sie die My.Settings.Save-Methode auf.To save the settings immediately, call the My.Settings.Save method. Weitere Informationen finden Sie unter Vorgehensweise: Beibehalten von Benutzereinstellungen in Visual Basic.For more information, see How to: Persist User Settings in Visual Basic.

Siehe auchSee Also

My.Settings-ObjektMy.Settings Object
Vorgehensweise: Lesen von Anwendungseinstellungen in Visual BasicHow to: Read Application Settings in Visual Basic
Vorgehensweise: Ändern von Benutzereinstellungen in Visual BasicHow to: Change User Settings in Visual Basic
Vorgehensweise: Beibehalten von Benutzereinstellungen in Visual BasicHow to: Persist User Settings in Visual Basic
Verwalten von Anwendungseinstellungen (.NET)Managing Application Settings (.NET)