1. 程式人生 > >Settings模板類

Settings模板類

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Configuration;
using System.Drawing;

/// ---------------------------
/// 說明:Settings模板類
/// 製作人:wqq
/// 時間:20181207
/// ---------------------------
/// internal:只有在同一程式集的檔案中,內部型別或成員才可訪問
/// sealed:應用於某個類時,sealed 修飾符可阻止其他類繼承自該類
namespace Csharp
{
    /// <summary>
    /// 應用設定模板類
    /// </summary>
    internal sealed class MySettings : ApplicationSettingsBase
    {
        private static MySettings defaultInstance = ((MySettings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new MySettings())));
        //返回一個物件
        public static MySettings Default
        {
            get
            {
                return defaultInstance;
            }
        }

        #region 建構函式(新增事件)
        private MySettings()
        {
            // // 若要為儲存和更改設定新增事件處理程式,請取消註釋下列行:
            //
            // this.SettingChanging += this.SettingChangingEventHandler;
            //
            // this.SettingsSaving += this.SettingsSavingEventHandler;
            //
            this.SettingsLoaded += this.SettingsLoadedEventHandler;
        }

        private void SettingsLoadedEventHandler(object sender, SettingsLoadedEventArgs e)
        {

            // 在此處新增用於處理 SettingsLoaded 事件的程式碼。
        }
        private void SettingChangingEventHandler(object sender, System.Configuration.SettingChangingEventArgs e)
        {
            // 在此處新增用於處理 SettingChangingEvent 事件的程式碼。
        }

        private void SettingsSavingEventHandler(object sender, System.ComponentModel.CancelEventArgs e)
        {
            // 在此處新增用於處理 SettingsSaving 事件的程式碼。
        }
        #endregion


        [global::System.Configuration.UserScopedSettingAttribute()]// 指定應用程式設定組或屬性對於應用程式的每個使用者包含不同的值。無法繼承此類。
        [global::System.Configuration.DefaultSettingValueAttribute("UserString")]// 指定應用程式設定屬性的預設值。
        public string UserString
        {
            get
            {
                return ((string)(this["UserString"]));
            }
            set
            {
                this["UserString"] = value;
            }
        }

        [global::System.Configuration.ApplicationScopedSettingAttribute()]//指定應用程式設定屬性具有適用於應用程式所有使用者的公共值。無法繼承此類。
        [global::System.Configuration.DefaultSettingValueAttribute("AppString")]//設定預設值
        public string AppString
        {
            get
            {
                return ((string)(this["AppString"]));
            }
        }
    }
}