ClientSettingsProvider 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
讓 Windows 架構應用程式可從 Web 設定服務擷取使用者設定。
public ref class ClientSettingsProvider : System::Configuration::SettingsProvider, System::Configuration::IApplicationSettingsProvider
public class ClientSettingsProvider : System.Configuration.SettingsProvider, System.Configuration.IApplicationSettingsProvider
[System.Security.SecurityCritical]
public class ClientSettingsProvider : System.Configuration.SettingsProvider, System.Configuration.IApplicationSettingsProvider
type ClientSettingsProvider = class
inherit SettingsProvider
interface IApplicationSettingsProvider
[<System.Security.SecurityCritical>]
type ClientSettingsProvider = class
inherit SettingsProvider
interface IApplicationSettingsProvider
Public Class ClientSettingsProvider
Inherits SettingsProvider
Implements IApplicationSettingsProvider
- 繼承
- 屬性
- 實作
範例
下列範例程式代碼示範如何使用此事件來顯示未成功儲存的設定清單。
private void AttachSettingsSavedEventHandler()
{
((ClientSettingsProvider)Properties.Settings.Default.Providers
["System.Web.ClientServices.Providers.ClientSettingsProvider"])
.SettingsSaved +=
new EventHandler<SettingsSavedEventArgs>(Form1_SettingsSaved);
}
private void Form1_SettingsSaved(object sender,
SettingsSavedEventArgs e)
{
// If any settings were not saved, display a list of them.
if (e.FailedSettingsList.Count > 0)
{
String failedSettings = String.Join(
Environment.NewLine,
e.FailedSettingsList.ToArray());
String message = String.Format("{0}{1}{1}{2}",
"The following setting(s) were not saved:",
Environment.NewLine, failedSettings);
MessageBox.Show(message, "Unable to save settings",
MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
Private WithEvents settingsProvider As ClientSettingsProvider = My.Settings _
.Providers("System.Web.ClientServices.Providers.ClientSettingsProvider")
Private Sub Form1_SettingsSaved(ByVal sender As Object, _
ByVal e As SettingsSavedEventArgs) _
Handles settingsProvider.SettingsSaved
' If any settings were not saved, display a list of them.
If e.FailedSettingsList.Count > 0 Then
Dim failedSettings As String = String.Join( _
Environment.NewLine, e.FailedSettingsList.ToArray())
Dim message As String = String.Format("{0}{1}{1}{2}", _
"The following setting(s) were not saved:", _
Environment.NewLine, failedSettings)
MessageBox.Show(message, "Unable to save settings", _
MessageBoxButtons.OK, MessageBoxIcon.Warning)
End If
End Sub
備註
您可以使用用戶端應用程式服務,藉由將應用程式設定為使用 ClientSettingsProvider 類別,從現有的 Web 設定服務擷取使用者設定。 設定之後,您可以透過衍生自 ApplicationSettingsBase 的應用程式設定類別來取得及設定使用者設定, ClientSettingsProvider 以使用 類別。 您可以使用 Visual Studio 為專案產生Settings
類別, (在 C# 和 My.Settings
Visual Basic) 中存取Properties.Settings.Default
。 如需應用程式設定的詳細資訊,請參閱應用程式設定概觀。
您可以使用完整ClientSettingsProvider類別名稱作為索引鍵,ApplicationSettingsBase.Providers透過屬性擷取目前的 ClientSettingsProvider 。 當您處理ApplicationSettingsBase.SettingsLoaded事件時,您也可以透過 SettingsLoadedEventArgs.Provider 屬性擷取提供者。
注意
這個類別包含類別層級的 , SecurityCriticalAttribute 適用於類別的所有成員。 如果立即呼叫端為安全性透明或部分信任,則會擲回運行時間例外狀況。 如需安全性關鍵類型和成員的詳細資訊,請參閱 安全性透明程式代碼層級 2。
注意
這個類別包含適用於所有成員之類別層級的繼承需求。 SecurityException當衍生類別沒有完全信任權限時,會擲回 。 如需安全性需求的詳細資訊,請參閱 連結需求 和 繼承需求。
建構函式
ClientSettingsProvider() |
初始化 ClientSettingsProvider 類別的新執行個體。 |
屬性
ApplicationName |
這個屬性不是由這個類別所使用。 |
Description |
取得簡短、易讀的描述,適合顯示在管理工具或其他使用者介面 (UI) 中。 (繼承來源 ProviderBase) |
Name |
取得用來在設定期間代表提供者的易記名稱。 (繼承來源 ProviderBase) |
ServiceUri |
取得或設定 Web 設定服務位置。 |
方法
Equals(Object) |
判斷指定的物件是否等於目前的物件。 (繼承來源 Object) |
GetHashCode() |
做為預設雜湊函式。 (繼承來源 Object) |
GetPreviousVersion(SettingsContext, SettingsProperty) |
取得指定之屬性的舊版本。 |
GetPropertyMetadata(String) |
取得從指定之 Web 設定服務所擷取之所有屬性的中繼資料集合。 |
GetPropertyValues(SettingsContext, SettingsPropertyCollection) |
傳回指定之應用程式執行個體和設定屬性群組的設定屬性值集合。 |
GetType() |
取得目前執行個體的 Type。 (繼承來源 Object) |
Initialize(String, NameValueCollection) |
將提供者初始化。 |
MemberwiseClone() |
建立目前 Object 的淺層複製。 (繼承來源 Object) |
Reset(SettingsContext) |
將所有的使用者設定重設為其預設值。 |
SetPropertyValues(SettingsContext, SettingsPropertyValueCollection) |
設定指定屬性設定群組的值。 |
ToString() |
傳回代表目前物件的字串。 (繼承來源 Object) |
Upgrade(SettingsContext, SettingsPropertyCollection) |
這個類別不會使用這個方法。 |
事件
SettingsSaved |
在設定提供者嘗試將屬性值儲存至 Web 設定服務之後發生。 |