共用方式為


如何:在 Visual Basic 中建立使用者設定的屬性方格

您可以使用 My.Settings 物件的使用者設定屬性填入 PropertyGrid 控制項,以建立使用者設定的屬性方格。

注意

為了確保此範例正常運作,您的應用程式必須已設定其使用者設定。 如需詳細資訊,請參閱管理應用程式設定 (.NET)

My.Settings 物件會將每項設定公開為屬性。 屬性名稱與設定名稱相同,而屬性類型與設定類型相同。 設定的 [範圍] 可判斷屬性是否為唯讀;[應用程式] 範圍設定的屬性為唯讀,而 [使用者] 範圍設定的屬性為讀寫。 如需詳細資訊,請參閱 My.Settings 物件

注意

您無法在執行階段變更或儲存應用程式範圍設定的值。 只有在建立應用程式時 (透過 [專案設計工具]或藉由編輯應用程式的組態檔),才能變更應用程式範圍的設定。 如需詳細資訊,請參閱管理應用程式設定 (.NET)

此範例會使用 PropertyGrid 控制項來存取 My.Settings 物件的使用者設定屬性。 PropertyGrid 預設會顯示 My.Settings 物件的所有屬性。 不過,使用者設定屬性有 UserScopedSettingAttribute 屬性。 此範例會將 PropertyGridBrowsableAttributes 屬性設定為 UserScopedSettingAttribute 以只顯示使用者設定屬性。

新增使用者設定屬性方格

  1. 將 PropertyGrid 控制項從 [工具箱] 新增至應用程式 (此處假設為 Form1) 的設計介面。

    屬性方格控制項的預設名稱為 PropertyGrid1

  2. 按兩下 Form1 的設計介面,以開啟表單載入事件處理常式的程式碼。

  3. My.Settings 物件設定為屬性方格的選取物件。

    PropertyGrid1.SelectedObject = My.Settings
    
  4. 將屬性方格設定為只顯示使用者設定。

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

    注意

    若只要顯示應用程式範圍的設定,請使用 ApplicationScopedSettingAttribute 屬性而不是 UserScopedSettingAttribute

穩固程式設計

應用程式關閉時,會儲存使用者設定。 若要立即儲存設定,請呼叫 My.Settings.Save 方法。 如需詳細資訊,請參閱如何:保存 Visual Basic 中的使用者設定

另請參閱