ApplicationSettingsBase 类

定义

作为派生具体包装类以实现 Window 窗体应用程序中的应用程序设置功能的基类。Acts as a base class for deriving concrete wrapper classes to implement the application settings feature in Window Forms applications.

public ref class ApplicationSettingsBase abstract : System::Configuration::SettingsBase, System::ComponentModel::INotifyPropertyChanged
public abstract class ApplicationSettingsBase : System.Configuration.SettingsBase, System.ComponentModel.INotifyPropertyChanged
type ApplicationSettingsBase = class
    inherit SettingsBase
    interface INotifyPropertyChanged
Public MustInherit Class ApplicationSettingsBase
Inherits SettingsBase
Implements INotifyPropertyChanged
继承
ApplicationSettingsBase
实现

示例

下面的代码示例演示如何使用应用程序设置来持久保存主窗体的以下属性:位置、大小、背景色和标题栏文本。The following code example demonstrates the use of application settings to persist the following attributes of the main form: location, size, background color, and title bar text. 所有这些属性都作为 FormSettings 类中的单个应用程序设置属性保留,分别名为 FormLocationFormSizeFormBackColorFormTextAll of these attributes are persisted as single application settings properties in the FormSettings class, named FormLocation, FormSize, FormBackColor and FormText, respectively. FormTextSize 之外的所有数据都绑定到其关联的窗体属性,并使用 DefaultSettingValueAttribute应用默认设置值。All except for FormText and Size are data bound to their associated form properties and have a default setting value applied using DefaultSettingValueAttribute.

该窗体包含四个具有以下名称和函数的子控件:The form contains four child controls that have the following names and functions:

  • 一个名为 btnBackColor 的按钮,用于显示颜色通用对话框。A button named btnBackColor used to display the Color common dialog box.

  • 名为 btnReload 用于 Reload 应用程序设置的按钮。A button named btnReload used to Reload the application settings.

  • 名为 btnReset 用于 Reset 应用程序设置的按钮。A button named btnReset used to Reset the application settings.

  • 名为 tbStatus 的文本框,用于显示有关程序的状态信息。A textbox named tbStatus used to display status information about the program.

请注意,每次执行应用程序后,会在窗体的标题文本后附加一个句点字符。Notice that after every execution of the application, an additional period character is appended to the title text of the form.

此代码示例需要一个具有名为 colorDialog1ColorDialog 类的窗体和一个具有名为 tbStatusToolStripStatusLabelStatusStrip 控件。This code example requires a Form with a ColorDialog class named colorDialog1, and a StatusStrip control with a ToolStripStatusLabel named tbStatus. 此外,它还需要三个名为 btnReloadbtnResetbtnBackColorButton 对象。Additionally, it requires three Button objects named btnReload, btnReset, and btnBackColor.


#using <System.dll>
#using <System.Drawing.dll>
#using <System.Windows.Forms.dll>

using namespace System;
using namespace System::ComponentModel;
using namespace System::Drawing;
using namespace System::Configuration;
using namespace System::Windows::Forms;

namespace AppSettingsSample
{
    //Application settings wrapper class
    ref class FormSettings sealed: public ApplicationSettingsBase
    {
    public:
        [UserScopedSettingAttribute()]
        property String^ FormText
        {
            String^ get()
            {
                return (String^)this["FormText"];
            }
            void set( String^ value )
            {
                this["FormText"] = value;
            }
        }

    public:
        [UserScopedSettingAttribute()]
        [DefaultSettingValueAttribute("0, 0")]
        property Point FormLocation
        {
            Point get()
            {
                return (Point)(this["FormLocation"]);
            }
            void set( Point value )
            {
                this["FormLocation"] = value;
            }
        }

    public:
        [UserScopedSettingAttribute()]
        [DefaultSettingValueAttribute("225, 200")]
        property Size FormSize
        {
            Size get()
            {
                return (Size)this["FormSize"];
            }
            void set( Size value )
            {
                this["FormSize"] = value;
            }
        }

    public:
        [UserScopedSettingAttribute()]
        [DefaultSettingValueAttribute("LightGray")]
        property Color FormBackColor
        {
            Color get()
            {
                return (Color)this["FormBackColor"];
            }
            void set(Color value)
            {
                this["FormBackColor"] = value;
            }
        }

    };

    ref class AppSettingsForm : Form
    {
        /// <summary>
        /// Required designer variable.
        /// </summary>
    private:
        System::ComponentModel::IContainer^ components;

        /// <summary>
        /// Clean up any resources being used. The Dispose(true) 
        /// pattern for embedded objects is implemented with this
        /// code that just contains a destructor 
        /// </summary>
    public:
        ~AppSettingsForm()
        {
            if (components != nullptr)
            {
                delete components;
            }
        }

#pragma region Windows Form Designer generated code

        /// <summary>
        /// Required method for Designer support - do not modify
        /// the contents of this method with the code editor.
        /// </summary>
    private:
        void InitializeComponent()
        {
            this->components = nullptr;
            this->colorDialog = gcnew System::Windows::Forms::ColorDialog();
            this->backColorButton = gcnew System::Windows::Forms::Button();
            this->resetButton = gcnew System::Windows::Forms::Button();
            this->statusDisplay = gcnew System::Windows::Forms::TextBox();
            this->reloadButton = gcnew System::Windows::Forms::Button();
            this->SuspendLayout();
            //
            // backColorButton
            //
            this->backColorButton->Location = System::Drawing::Point(26, 24);
            this->backColorButton->Name = "backColorButton";
            this->backColorButton->Size = System::Drawing::Size(159, 23);
            this->backColorButton->TabIndex = 0;
            this->backColorButton->Text = "Change Background Color";
            this->backColorButton->Click += gcnew System::EventHandler
                (this,&AppSettingsForm::BackColorButton_Click);
            //
            // resetButton
            //
            this->resetButton->Location = System::Drawing::Point(26, 90);
            this->resetButton->Name = "resetButton";
            this->resetButton->Size = System::Drawing::Size(159, 23);
            this->resetButton->TabIndex = 1;
            this->resetButton->Text = "Reset to Defaults";
            this->resetButton->Click += gcnew System::EventHandler
                (this,&AppSettingsForm::ResetButton_Click);
            //
            // statusDisplay
            //
            this->statusDisplay->Location = System::Drawing::Point(26, 123);
            this->statusDisplay->Name = "statusDisplay";
            this->statusDisplay->Size = System::Drawing::Size(159, 20);
            this->statusDisplay->TabIndex = 2;
            //
            // reloadButton
            //
            this->reloadButton->Location = System::Drawing::Point(26, 57);
            this->reloadButton->Name = "reloadButton";
            this->reloadButton->Size = System::Drawing::Size(159, 23);
            this->reloadButton->TabIndex = 3;
            this->reloadButton->Text = "Reload from Storage";
            this->reloadButton->Click += gcnew System::EventHandler
                (this,&AppSettingsForm::ReloadButton_Click);
            //
            // AppSettingsForm
            //
            this->ClientSize = System::Drawing::Size(217, 166);
            this->Controls->Add(this->reloadButton);
            this->Controls->Add(this->statusDisplay);
            this->Controls->Add(this->resetButton);
            this->Controls->Add(this->backColorButton);
            this->Name = "AppSettingsForm";
            this->Text = "App Settings";
            this->FormClosing += gcnew
                System::Windows::Forms::FormClosingEventHandler
                (this,&AppSettingsForm::AppSettingsForm_FormClosing);
            this->Load += gcnew System::EventHandler(this,
                &AppSettingsForm::AppSettingsForm_Load);
            this->ResumeLayout(false);
            this->PerformLayout();

        }

#pragma endregion

    private:
        System::Windows::Forms::ColorDialog^ colorDialog;

        System::Windows::Forms::Button^ backColorButton;

        System::Windows::Forms::Button^ resetButton;

        System::Windows::Forms::TextBox^ statusDisplay;

        System::Windows::Forms::Button^ reloadButton;



        FormSettings ^ formSettings;

    public:
        AppSettingsForm()
        {
            formSettings = gcnew FormSettings;
            InitializeComponent();
        }

    private:
        void AppSettingsForm_Load(Object^ sender, EventArgs^ e)
        {
            //Associate settings property event handlers.
            formSettings->SettingChanging += gcnew SettingChangingEventHandler(
                this, &AppSettingsForm::FormSettings_SettingChanging);
            formSettings->SettingsSaving += gcnew SettingsSavingEventHandler(
                this,&AppSettingsForm::FormSettings_SettingsSaving);

            //Data bind settings properties with straightforward associations.
            Binding^ backColorBinding = gcnew Binding("BackColor", 
                formSettings, "FormBackColor", true, 
                DataSourceUpdateMode::OnPropertyChanged);
            this->DataBindings->Add(backColorBinding);
            Binding^ sizeBinding = gcnew Binding("Size", formSettings,
                "FormSize", true, DataSourceUpdateMode::OnPropertyChanged);
            this->DataBindings->Add(sizeBinding);
            Binding^ locationBinding = gcnew Binding("Location", formSettings,
                "FormLocation", true, DataSourceUpdateMode::OnPropertyChanged);
            this->DataBindings->Add(locationBinding);

            //For more complex associations, manually assign associations.
            String^ savedText = formSettings->FormText;
            //Since there is no default value for FormText.
            if (savedText != nullptr)
            {
                this->Text = savedText;
            }
        }

    private:
        void AppSettingsForm_FormClosing(Object^ sender,
            FormClosingEventArgs^ e)
        {
            //Synchronize manual associations first.
            formSettings->FormText = this->Text + '.';
            formSettings->Save();
        }

    private:
        void BackColorButton_Click(Object^ sender, EventArgs^ e)
        {
            if (::DialogResult::OK == colorDialog->ShowDialog())
            {
                Color color = colorDialog->Color;
                this->BackColor = color;
            }
        }

    private:
        void ResetButton_Click(Object^ sender, EventArgs^ e)
        {
            formSettings->Reset();
            this->BackColor = SystemColors::Control;
        }

    private:
        void ReloadButton_Click(Object^ sender, EventArgs^ e)
        {
            formSettings->Reload();
        }

    private:
        void FormSettings_SettingChanging(Object^ sender,
            SettingChangingEventArgs^ e)
        {
            statusDisplay->Text = e->SettingName + ": " + e->NewValue;
        }

    private:
        void FormSettings_SettingsSaving(Object^ sender,
            CancelEventArgs^ e)
        {
            //Should check for settings changes first.
            ::DialogResult^ dialogResult = MessageBox::Show(
                "Save current values for application settings?",
                "Save Settings", MessageBoxButtons::YesNo);
            if (::DialogResult::No == dialogResult)
            {
                e->Cancel = true;
            }
        }
    };
   partial class Form1 : Form
   {
       private FormSettings frmSettings1 = new FormSettings();

       public Form1()
       {
           InitializeComponent();
       }

       private void Form1_Load(object sender, EventArgs e)
       {
           this.FormClosing += new FormClosingEventHandler(Form1_FormClosing);

           //Associate settings property event handlers.
           frmSettings1.SettingChanging += new SettingChangingEventHandler(
                                               frmSettings1_SettingChanging);
           frmSettings1.SettingsSaving += new SettingsSavingEventHandler(
                                               frmSettings1_SettingsSaving);

           //Data bind settings properties with straightforward associations.
           Binding bndBackColor = new Binding("BackColor", frmSettings1, 
               "FormBackColor", true, DataSourceUpdateMode.OnPropertyChanged);
           this.DataBindings.Add(bndBackColor);
           Binding bndLocation = new Binding("Location", frmSettings1, 
               "FormLocation", true, DataSourceUpdateMode.OnPropertyChanged);
           this.DataBindings.Add(bndLocation);

           // Assign Size property, since databinding to Size doesn't work well.
            this.Size = frmSettings1.FormSize;

           //For more complex associations, manually assign associations.
           String savedText = frmSettings1.FormText;
           //Since there is no default value for FormText.
           if (savedText != null)
               this.Text = savedText;
       }

       private void Form1_FormClosing(object sender, FormClosingEventArgs e)
       {
           //Synchronize manual associations first.
           frmSettings1.FormText = this.Text + '.';
           frmSettings1.FormSize = this.Size;
           frmSettings1.Save();
       }

       private void btnBackColor_Click(object sender, EventArgs e)
       {
           if (DialogResult.OK == colorDialog1.ShowDialog())
           {
               Color c = colorDialog1.Color;
               this.BackColor = c;
           }
       }

       private void btnReset_Click(object sender, EventArgs e)
       {
           frmSettings1.Reset();
           this.BackColor = SystemColors.Control;
       }

       private void btnReload_Click(object sender, EventArgs e)
       {
           frmSettings1.Reload();
       }

       void frmSettings1_SettingChanging(object sender, SettingChangingEventArgs e)
       {
           tbStatus.Text = e.SettingName + ": " + e.NewValue;
       }

       void frmSettings1_SettingsSaving(object sender, CancelEventArgs e)
       {
           //Should check for settings changes first.
           DialogResult dr = MessageBox.Show(
                           "Save current values for application settings?",
                           "Save Settings", MessageBoxButtons.YesNo);
           if (DialogResult.No == dr)
           {
               e.Cancel = true;
           }
       }

   }

   //Application settings wrapper class
   sealed class FormSettings : ApplicationSettingsBase
   {
       [UserScopedSettingAttribute()]
       public String FormText
       {
           get { return (String)this["FormText"]; }
           set { this["FormText"] = value; }
       }

       [UserScopedSettingAttribute()]
       [DefaultSettingValueAttribute("0, 0")]
       public Point FormLocation
       {
           get { return (Point)(this["FormLocation"]); }
           set { this["FormLocation"] = value; }
       }

       [UserScopedSettingAttribute()]
       [DefaultSettingValueAttribute("225, 200")]
       public Size FormSize
       {
           get { return (Size)this["FormSize"]; }
           set { this["FormSize"] = value; }
       }

       [UserScopedSettingAttribute()]
       [DefaultSettingValueAttribute("LightGray")]
       public Color FormBackColor
       {
           get { return (Color)this["FormBackColor"]; }
           set { this["FormBackColor"] = value; }
       }

   }

Imports System.Configuration
Imports System.ComponentModel

Public Class Form1

    Private WithEvents frmSettings1 As New FormSettings

    Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) _
            Handles MyBase.Load
        'Settings property event handlers are associated through WithEvents 
        '  and Handles combination.

        'Data bind settings properties with straightforward associations.
        Dim bndBackColor As New Binding("BackColor", frmSettings1, "FormBackColor", _
                True, DataSourceUpdateMode.OnPropertyChanged)
        Me.DataBindings.Add(bndBackColor)
        Dim bndLocation As New Binding("Location", frmSettings1, "FormLocation", _
                True, DataSourceUpdateMode.OnPropertyChanged)
        Me.DataBindings.Add(bndLocation)

        ' Assign Size property, since databinding to Size doesn't work well.
        Me.Size = frmSettings1.FormSize

        'For more complex associations, manually assign associations.
        Dim savedText As String = frmSettings1.FormText
        'Since there is no default value for FormText.
        If (savedText IsNot Nothing) Then
            Me.Text = savedText
        End If
    End Sub

    Private Sub Form1_FormClosing_1(ByVal sender As Object, ByVal e As _
            FormClosingEventArgs) Handles MyBase.FormClosing
        'Synchronize manual associations first.
        frmSettings1.FormText = Me.Text + "."c

        ' Save size settings manually.
        frmSettings1.FormSize = Me.Size

        frmSettings1.Save()
    End Sub

    Private Sub btnBackColor_Click(ByVal sender As Object, ByVal e As EventArgs) _
            Handles btnBackColor.Click
        If System.Windows.Forms.DialogResult.OK = colorDialog1.ShowDialog() Then
            Dim c As Color = colorDialog1.Color
            Me.BackColor = c
        End If
    End Sub

    Private Sub btnReset_Click(ByVal sender As Object, ByVal e As EventArgs) _
            Handles btnReset.Click
        frmSettings1.Reset()
        Me.BackColor = SystemColors.Control
    End Sub

    Private Sub btnReload_Click(ByVal sender As Object, ByVal e As EventArgs) _
            Handles btnReload.Click
        frmSettings1.Reload()
    End Sub

    Private Sub frmSettings1_SettingChanging(ByVal sender As Object, ByVal e As _
            SettingChangingEventArgs) Handles frmSettings1.SettingChanging
        tbStatus.Text = e.SettingName & ": " & e.NewValue.ToString
    End Sub

    Private Sub frmSettings1_SettingsSaving(ByVal sender As Object, ByVal e As _
            CancelEventArgs) Handles frmSettings1.SettingsSaving
        'Should check for settings changes first.
        Dim dr As DialogResult = MessageBox.Show( _
            "Save current values for application settings?", "Save Settings", _
            MessageBoxButtons.YesNo)
        If (System.Windows.Forms.DialogResult.No = dr) Then
            e.Cancel = True
        End If
    End Sub
End Class

'Application settings wrapper class. This class defines the settings we intend to use in our application.
NotInheritable Class FormSettings
    Inherits ApplicationSettingsBase

    <UserScopedSettingAttribute()> _
    Public Property FormText() As String
        Get
            Return CStr(Me("FormText"))
        End Get
        Set(ByVal value As String)
            Me("FormText") = value
        End Set
    End Property

    <UserScopedSettingAttribute(), DefaultSettingValueAttribute("0, 0")> _
    Public Property FormLocation() As Point
        Get
            Return CType(Me("FormLocation"), Point)
        End Get
        Set(ByVal value As Point)
            Me("FormLocation") = value
        End Set
    End Property

    <UserScopedSettingAttribute(), DefaultSettingValueAttribute("225, 200")> _
    Public Property FormSize() As Size
        Get
            Return CType(Me("FormSize"), Size)
        End Get
        Set(ByVal value As Size)
            Me("FormSize") = value
        End Set
    End Property

    <UserScopedSettingAttribute(), DefaultSettingValueAttribute("LightGray")> _
    Public Property FormBackColor() As Color
        Get
            Return CType(Me("FormBackColor"), Color)
        End Get
        Set(ByVal value As Color)
            Me("FormBackColor") = value
        End Set
    End Property
End Class

注解

ApplicationSettingsBase 将以下功能添加到基于 Web 的应用程序使用的 SettingsBase 类中:ApplicationSettingsBase adds the following functionality to the SettingsBase class, which is used by Web-based applications:

  • 检测派生的设置包装器类的属性的功能。The ability to detect attributes on a derived, settings wrapper class. ApplicationSettingsBase 支持用于包装类属性的声明性模型,如稍后所述。ApplicationSettingsBase supports the declarative model used for wrapper class properties, as described later.

  • 更高级别的 SaveReload 方法。Higher-level Save and Reload methods.

  • 其他验证事件,可对其进行处理以确保各个设置的正确性。Additional validation events that you can handle to ensure the correctness of individual settings.

在应用程序设置体系结构中,若要访问一组设置属性,需要从 ApplicationSettingsBase派生具体的包装类。In the application settings architecture, to access a group of settings properties you need to derive a concrete wrapper class from ApplicationSettingsBase. 包装类通过以下方式自定义 ApplicationSettingsBaseThe wrapper class customizes ApplicationSettingsBase in the following ways:

  • 对于每个要访问的设置属性,会将相应的强类型公共属性添加到包装类中。For every settings property to be accessed, a corresponding strongly typed public property is added to the wrapper class. 此属性具有读/写应用程序设置 getset 访问器,但只有 get 访问器用于只读设置。This property has get and set accessors for read/write application settings, but only a get accessor for read-only settings.

  • 相应特性必须应用于包装类的公共属性,以指示 settings 属性的特征,例如设置的范围(应用程序或用户),该设置是否应支持漫游,该设置的默认值为设置、要使用的设置提供程序,等等。Appropriated attributes must be applied to the wrapper class's public properties to indicate characteristics of the settings property, such as the setting's scope (application or user), whether the setting should support roaming, the default value for the setting, the settings provider to be used, and so on. 每个属性都需要使用 ApplicationScopedSettingAttributeUserScopedSettingAttribute来指定其作用域。Each property is required to specify its scope, using either ApplicationScopedSettingAttribute or UserScopedSettingAttribute. 如果使用默认 LocalFileSettingsProvider,应用程序范围的设置为只读。Application-scoped settings are read-only if the default LocalFileSettingsProvider is used.

ApplicationSettingsBase 类使用反射在运行时检测这些特性。The ApplicationSettingsBase class uses reflection to detect these attributes at run time. 此信息的大部分传递到设置提供程序层,后者负责存储、持久性格式等。Most of this information gets passed to the settings provider layer, which is responsible for storage, persistence format, and so on.

当应用程序具有多个设置包装类时,每个类都定义一个设置组When an application has multiple settings wrapper classes, each class defines a settings group. 每个组具有以下特征:Each group has the following characteristics:

  • 一个组可以包含任意数量或类型的属性设置。A group can contain any number or type of property settings.

  • 如果未通过使用 SettingsGroupNameAttribute修饰包装类来显式设置组名称,则会自动生成一个名称。If the group name is not explicitly set by the decorating the wrapper class with a SettingsGroupNameAttribute, then a name is automatically generated.

默认情况下,所有基于客户端的应用程序都使用 LocalFileSettingsProvider 来提供存储。By default, all client-based applications use the LocalFileSettingsProvider to provide storage. 如果需要备用设置提供程序,则必须使用相应的 SettingsProviderAttribute修饰包装类或属性。If an alternate settings provider is desired, then the wrapper class or property must be decorated with a corresponding SettingsProviderAttribute.

有关使用应用程序设置的详细信息,请参阅Windows 窗体的应用程序设置For more information about using application settings, see Application Settings for Windows Forms.

构造函数

ApplicationSettingsBase()

ApplicationSettingsBase 类的实例初始化为其默认状态。Initializes an instance of the ApplicationSettingsBase class to its default state.

ApplicationSettingsBase(IComponent)

使用提供的所有者组件初始化 ApplicationSettingsBase 类的实例。Initializes an instance of the ApplicationSettingsBase class using the supplied owner component.

ApplicationSettingsBase(IComponent, String)

使用提供的所有者组件和设置键初始化 ApplicationSettingsBase 类的实例。Initializes an instance of the ApplicationSettingsBase class using the supplied owner component and settings key.

ApplicationSettingsBase(String)

使用提供的设置键初始化 ApplicationSettingsBase 类的实例。Initializes an instance of the ApplicationSettingsBase class using the supplied settings key.

属性

Context

获取与设置组关联的应用程序设置上下文。Gets the application settings context associated with the settings group.

IsSynchronized

获取一个值,该值指示访问对象是否同步(线程安全)。Gets a value indicating whether access to the object is synchronized (thread safe).

(继承自 SettingsBase)
Item[String]

获取或设置指定的应用程序设置属性的值。Gets or sets the value of the specified application settings property.

Properties

获取包装中的设置属性的集合。Gets the collection of settings properties in the wrapper.

PropertyValues

获取属性值的集合。Gets a collection of property values.

Providers

获取包装所使用的应用程序设置提供程序的集合。Gets the collection of application settings providers used by the wrapper.

SettingsKey

获取或设置应用程序设置组的设置键。Gets or sets the settings key for the application settings group.

方法

Equals(Object)

确定指定的对象是否等于当前对象。Determines whether the specified object is equal to the current object.

(继承自 Object)
GetHashCode()

用作默认哈希函数。Serves as the default hash function.

(继承自 Object)
GetPreviousVersion(String)

返回同一应用程序的早期版本的命名设置属性的值。Returns the value of the named settings property for the previous version of the same application.

GetType()

获取当前实例的 TypeGets the Type of the current instance.

(继承自 Object)
Initialize(SettingsContext, SettingsPropertyCollection, SettingsProviderCollection)

初始化 SettingsBase 对象使用的内部属性。Initializes internal properties used by SettingsBase object.

(继承自 SettingsBase)
MemberwiseClone()

创建当前 Object 的浅表副本。Creates a shallow copy of the current Object.

(继承自 Object)
OnPropertyChanged(Object, PropertyChangedEventArgs)

引发 PropertyChanged 事件。Raises the PropertyChanged event.

OnSettingChanging(Object, SettingChangingEventArgs)

引发 SettingChanging 事件。Raises the SettingChanging event.

OnSettingsLoaded(Object, SettingsLoadedEventArgs)

引发 SettingsLoaded 事件。Raises the SettingsLoaded event.

OnSettingsSaving(Object, CancelEventArgs)

引发 SettingsSaving 事件。Raises the SettingsSaving event.

Reload()

从永久存储刷新应用程序设置属性值。Refreshes the application settings property values from persistent storage.

Reset()

将保持的应用程序设置值还原为其对应的默认属性。Restores the persisted application settings values to their corresponding default properties.

Save()

存储应用程序设置属性的当前值。Stores the current values of the application settings properties.

ToString()

返回一个表示当前对象的 string。Returns a string that represents the current object.

(继承自 Object)
Upgrade()

更新应用程序设置,以反映最近安装的应用程序。Updates application settings to reflect a more recent installation of the application.

事件

PropertyChanged

发生在更改应用程序设置属性的值之后。Occurs after the value of an application settings property is changed.

SettingChanging

发生在更改应用程序设置属性的值之前。Occurs before the value of an application settings property is changed.

SettingsLoaded

在从存储区中检索应用程序设置之后发生。Occurs after the application settings are retrieved from storage.

SettingsSaving

发生在将值保存到数据存储区中之前。Occurs before values are saved to the data store.

适用于

另请参阅