Settings模板类

本文深入探讨了C#中的Settings模板类,介绍了其内部结构、构造函数及事件处理,展示了如何使用MySettings类来管理和存储应用程序级别的设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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"]));
            }
        }
    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值