/// <summary>
        /// 加载数据集合
        /// </summary>
        /// <param name="DictionaryName"></param>
        private void LoadInfo(string DictionaryName, ref ComboBox Item)
        {
            CLDC_DataCore.SystemModel.Item.csDictionary _Dictionary = new CLDC_DataCore.SystemModel.Item.csDictionary();

            _Dictionary.Load();

            List <string> _Infos = _Dictionary.getValues(DictionaryName);     //获取字典中项目字典集合

            CLDC_DataCore.Function.BindCombox.BindComboxItem(Item, _Infos, true, DictionaryName, @".+?", true, _Dictionary);

            _Infos = null;

            _Dictionary = null;
        }
        /// <summary>
        /// 将LstData中的数据绑定到下拉中
        /// </summary>
        /// <param name="LstData"></param>
        /// <param name="CmbBox"></param>
        /// <param name="AddNew">需要新增项</param>
        /// <param name="ZiDianName">字典名</param>
        /// <param name="RegFilter">正则表达式,用于匹配输入的值格式是否满足要求,正则不区分大小写</param>
        /// <param name="hZiDian">新增以后保存到的字典对象、= null 则使用Comm.GlobalUnit.g_SystemConfig.ZiDianGroup</param>
        public static void BindComboxItem(ComboBox CmbBox, List <string> LstData, bool AddNew, string ZiDianName, string RegFilter, CLDC_DataCore.SystemModel.Item.csDictionary hZiDian)
        {
            BindComboxItem(CmbBox, LstData);
            if (AddNew)
            {
                ((DataTable)CmbBox.DataSource).Rows.Add(new object[] { "===新增===", RegFilter });
            }
            if (LstData.Count < 1)
            {
                CmbBox.SelectedIndex = -1;
            }

            CmbBox.DropDownClosed -= delegate(object sender, EventArgs e) { };
            CmbBox.DropDownClosed += delegate(object sender, EventArgs e)
            {
                int index = ((ComboBox)sender).SelectedIndex;
                if (index == -1)
                {
                    return;
                }
                if (((DataTable)((ComboBox)sender).DataSource).Rows[index]["名称"].ToString() != "===新增===")
                {
                    return;
                }
                Form FrmBindCmbBox;
                if (hZiDian == null)
                {
                    FrmBindCmbBox = new BindCombox_NewValue((ComboBox)sender, ZiDianName, ((ComboBox)CmbBox).SelectedValue.ToString());
                }
                else
                {
                    FrmBindCmbBox = new BindCombox_NewValue((ComboBox)sender, ZiDianName, ((ComboBox)CmbBox).SelectedValue.ToString(), hZiDian);
                }
                if (FrmBindCmbBox.ShowDialog() != DialogResult.OK)
                {
                    ((ComboBox)sender).SelectedIndex = -1;
                }
                FrmBindCmbBox.Dispose();
            };
        }
 /// <summary>
 /// 将LstData中的数据绑定到下拉中
 /// </summary>
 /// <param name="CmbBox"></param>
 /// <param name="LstData"></param>
 /// <param name="AddNew">是否可以新增</param>
 /// <param name="ZiDianName">字典名</param>
 /// <param name="RegFilter">正则表达式,用于匹配输入的值格式是否满足要求,正则不区分大小写</param>
 /// <param name="Sort">是否需要排序</param>
 /// <param name="hZiDian">新增以后保存到的字典对象、= null 则使用Comm.GlobalUnit.g_SystemConfig.ZiDianGroup</param>
 public static void BindComboxItem(ComboBox CmbBox, List <string> LstData, bool AddNew, string ZiDianName, string RegFilter, bool Sort, CLDC_DataCore.SystemModel.Item.csDictionary hZiDian)
 {
     if (Sort)
     {
         SortList(ref LstData, true);
     }
     BindComboxItem(CmbBox, LstData, AddNew, ZiDianName, RegFilter, hZiDian);
 }
Beispiel #4
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="CmbBox"></param>
 /// <param name="ZiDianName"></param>
 /// <param name="RegFilter">用于匹配格式的正则字符串</param>
 /// <param name="hZiDian">新增以后保存到的字典对象</param>
 public BindCombox_NewValue(ComboBox CmbBox, string ZiDianName, string RegFilter, CLDC_DataCore.SystemModel.Item.csDictionary hZiDian)
     : this(CmbBox, ZiDianName, RegFilter)
 {
     hZiDianGroup = hZiDian;
 }