Esempio n. 1
0
 public ConfigItem(ConfigItemEnum key, string keyname, double value, string comment)
 {
     Key     = key;
     KeyName = keyname;
     Value   = value;
     Comment = comment;
 }
Esempio n. 2
0
 public ConfigItem this[ConfigItemEnum key]
 {
     get
     {
         if (_list.ContainsKey(key))
         {
             return(_list[key]);
         }
         else
         {
             return(_list[ConfigItemEnum.UnDefined]);
         }
     }
 }
Esempio n. 3
0
        /// <summary>
        /// 从指定的DataTable中读取数据并构建内部表
        /// tblConfig
        /// </summary>
        /// <param name="dtSource">tblConfig</param>
        public void LoadFrom(DataTable dtSource)
        {
            _list.Clear();

            // 总是有一个 “未定义”项
            ConfigItem item = new ConfigItem(ConfigItemEnum.UnDefined, "ConfigItemNoDefined", 0, "未定义项");

            _list.Add(ConfigItemEnum.UnDefined, item);

            // 主界面刷新周期间隔
            item = new ConfigItem(ConfigItemEnum.UI_ScanInterval, "UI_ScanInterval", 100, "UI_ScanInterval");
            _list.Add(item.Key, item);


            // 从数据库中取值
            for (int i = 0; i < dtSource.Rows.Count; i++)
            {
                DataRow r = dtSource.Rows[i];

                string keyName = r["Key"].ToDbString().Replace('.', '_');

                ConfigItemEnum key = ParseFrom(keyName);
                if (key != ConfigItemEnum.UnDefined)
                {
                    item = new ConfigItem(key, keyName);

                    item.KeyName = keyName;
                    item.Comment = r["Comment"].ToDbString();
                    item.Value   = r["Value"].ToDbDouble();

                    _list.Add(key, item);
                }
                else
                {
                    System.Diagnostics.Debug.Print("配置表中的项目 {0} 没有对应的枚举值存在!请检查。", keyName);
                }
            }
        }
Esempio n. 4
0
 public ConfigItem(ConfigItemEnum key, string keyname)
     : this(key, keyname, 0d, null)
 {
 }