private void FillComboBox(ImageComboBoxEdit ctrl, Type enumeration, object selectedValue)
        {
            string description;
            string resx;

            object[]          attributes = null;
            MemberInfo[]      memInfo    = null;
            ImageComboBoxItem item       = null;

            ctrl.Properties.Items.Clear();
            foreach (var value in Enum.GetValues(enumeration))
            {
                memInfo     = enumeration.GetMember(value.ToString());
                attributes  = memInfo[0].GetCustomAttributes(typeof(DescriptionAttribute), false);
                description = ((DescriptionAttribute)attributes[0]).Description;
                attributes  = memInfo[0].GetCustomAttributes(typeof(EnumItemImage), false);
                resx        = (attributes.Length > 0 ? ((EnumItemImage)attributes[0]).Image : null);

                item             = new ImageComboBoxItem();
                item.Value       = value;
                item.Description = description;
                item.ImageIndex  = this.GetItemImage(ctrl, resx);

                ctrl.Properties.Items.Add(item);

                if (value == selectedValue)
                {
                    ctrl.SelectedItem = item;
                }
            }
        }
示例#2
0
        public static void AddEnum <TEnum>(this ImageComboBoxEdit imageComboBox, bool ordenacaoAlfabetica = true, bool permitirNulo = false)
            where TEnum : struct
        {
            var list = Enum.GetValues(typeof(TEnum))
                       .OfType <TEnum>()
                       .Where(c => !(c as Enum).IsHidden <TEnum>())
                       .OfType <object>();

            if (ordenacaoAlfabetica)
            {
                list = list.OrderBy(c => EnumHelper.GetDisplayName(c));
            }

            imageComboBox.Properties.Items.Clear();

            foreach (var item in list)
            {
                imageComboBox.Properties.Items.Add(new ImageComboBoxItem(EnumHelper.GetDisplayName(item), item));
            }

            if (permitirNulo)
            {
                imageComboBox.KeyDown += (sender, e) =>
                {
                    if (e.KeyCode == Keys.Back)
                    {
                        (sender as ImageComboBoxEdit).EditValue = null;
                        (sender as ImageComboBoxEdit).DoValidate();
                    }
                };
            }
        }
示例#3
0
        private void BindDataTable(ImageComboBoxEdit cmb, DataTable dtSource, string display, string valueMember)
        {
            if (dtSource == null)
            {
                return;
            }
            cmb.Properties.Items.Clear();
            DevExpress.XtraEditors.Controls.ImageComboBoxItem itemtemp = new DevExpress.XtraEditors.Controls.ImageComboBoxItem();
            itemtemp.Value       = null;
            itemtemp.Description = "请选择....";
            cmb.Properties.Items.Add(itemtemp);

            for (int i = 0; i < dtSource.Rows.Count; i++)
            {
                DevExpress.XtraEditors.Controls.ImageComboBoxItem itemtemp1 = new DevExpress.XtraEditors.Controls.ImageComboBoxItem();

                itemtemp1.Value       = dtSource.Rows[i][valueMember];
                itemtemp1.Description = dtSource.Rows[i][display].ToString();
                cmb.Properties.Items.Add(itemtemp1);
            }
            if (dtSource.Rows.Count > 0)
            {
                cmb.SelectedIndex = 0;
            }
            else
            {
                cmb.SelectedIndex = -1;
            }
        }
        private int GetItemImage(ImageComboBoxEdit ctrl, string resx)
        {
            int   idx   = -1;
            Image image = null;

            if (ctrl.Properties.SmallImages == null || string.IsNullOrEmpty(resx))
            {
                return(-1);
            }

            idx = ((ImageList)ctrl.Properties.SmallImages).Images.IndexOfKey(resx);
            if (idx >= 0)
            {
                return(idx);
            }
            else
            {
                image = Properties.Resources.ResourceManager.GetObject(resx) as Image;
                if (image != null)
                {
                    ((ImageList)ctrl.Properties.SmallImages).Images.Add(resx, image);
                    return(((ImageList)ctrl.Properties.SmallImages).Images.IndexOfKey(resx));
                }
            }

            return(-1);
        }
示例#5
0
        /// <summary>
        /// 加载审核审批状态信息
        /// </summary>
        /// <param name="imageComboBoxEditState">状态下拉框控件</param>
        /// <param name="isApproval">是否审批</param>
        protected void LoadCheckAppState(ImageComboBoxEdit imageComboBoxEditState, bool isApproval)
        {
            imageComboBoxEditState.Properties.Items.Clear();
            ImageComboBoxItemCollection itemColApprove =
                new ImageComboBoxItemCollection(imageComboBoxEditState.Properties);

            if (isApproval)
            {
                itemColApprove.Add(new ImageComboBoxItem("不需要审批", "0"));
                itemColApprove.Add(new ImageComboBoxItem("审批未提交", "1"));
                itemColApprove.Add(new ImageComboBoxItem("审批已提交", "2"));
                itemColApprove.Add(new ImageComboBoxItem("审批通过", "3"));
                itemColApprove.Add(new ImageComboBoxItem("审批不通过", "4"));
            }
            else
            {
                itemColApprove.Add(new ImageComboBoxItem("未审核", "0"));
                itemColApprove.Add(new ImageComboBoxItem("已验收", "1"));
            }

            imageComboBoxEditState.Properties.Items.AddRange(itemColApprove);
            if (imageComboBoxEditState.Properties.Items.Count > 0)
            {
                imageComboBoxEditState.SelectedIndex = 0;
            }
        }
示例#6
0
文件: Data.cs 项目: pearorgn/test
 public static void InitInterestRateData(ImageComboBoxEdit edit)
 {
     for (double i = 2.5; i < 15; i += 0.125)
     {
         edit.Properties.Items.Add(new ImageComboBoxItem(string.Format("{0:n3} %", i), i, -1));
     }
     edit.SelectedIndex = 25;
 }
示例#7
0
文件: Data.cs 项目: pearorgn/test
 public static void InitTermOfLoan(ImageComboBoxEdit edit)
 {
     int[] terms = new int[] { 1, 5, 10, 15, 20, 25, 30 };
     foreach (int term in terms)
     {
         edit.Properties.Items.Add(new ImageComboBoxItem(string.Format("{0} year{1}", term, term == 1 ? string.Empty : "s"), term, -1));
     }
     edit.SelectedIndex = 3;
 }
示例#8
0
文件: Data.cs 项目: pearorgn/test
        public static void InitStartMonth(ImageComboBoxEdit edit)
        {
            DateTime start = new DateTime(DateTime.Today.Year, DateTime.Today.Month, 1);

            for (int i = 1; i < 7; i++)
            {
                edit.Properties.Items.Add(new ImageComboBoxItem(string.Format("{0:MMMM, yyyy}", start.AddMonths(i)), start.AddMonths(i), -1));
            }
            edit.SelectedIndex = 0;
        }
示例#9
0
        private void ımageComboBoxEdit1_SelectedIndexChanged(object sender, EventArgs e)
        {
            ImageComboBoxEdit editor = sender as ImageComboBoxEdit;

            index             = editor.SelectedIndex;
            orginalBitmap     = (Bitmap)imageCollection3.Images[index];
            GeciciBitmap      = (Bitmap)imageCollection3.Images[index];
            pictureBox1.Image = imageCollection3.Images[index];
            resultBitmap      = orginalBitmap;
        }
示例#10
0
        public SetUnitView(ImportDataColumn importDataColumn, IImporterTask importerTask)
        {
            _importDataColumn = importDataColumn;
            getUnits();

            InitializeComponent();
            Shown += (s, e) => enableButtons();

            Text           = Captions.Importer.PleaseEnterDimensionAndUnitInformation;
            btnOK.Click   += (o, e) => this.DoWithinExceptionHandler(onOkClick);
            btnCopy.Click += (o, e) => this.DoWithinExceptionHandler(onCopyClick);

            if (useDimensionSelector)
            {
                _dimensionComboBox = createComboBox("Dimension", onDimensionComboBoxTextChanged);
            }

            _unitComboBox = createComboBox("Unit", onUnitComboBoxTextChanged);

            if (useDimensionSelector)
            {
                fillDimensionComboBox();
            }

            fillUnitComboBox();

            if (useDimensionSelector)
            {
                var dimItem = _dimensionComboBox.Properties.Items.GetItem(_importDataColumn.ActiveDimension.Name);
                if (_dimensionComboBox.Properties.Items.Contains(dimItem))
                {
                    _dimensionComboBox.EditValue = _importDataColumn.ActiveDimension.Name;
                }
                else
                {
                    importerTask.SetColumnUnit(_importDataColumn, selectedUnit.Name, true);
                }
            }

            var unitItem = _unitComboBox.Properties.Items.GetItem(_importDataColumn.ActiveUnit.Name);

            if (_unitComboBox.Properties.Items.Contains(unitItem))
            {
                _unitComboBox.EditValue = _importDataColumn.ActiveUnit.Name;
            }

            arrangeControls();

            enableButtons();
            if (ParentForm != null)
            {
                Icon = ParentForm.Icon;
            }
        }
        private object GetEnum(ImageComboBoxEdit ctrl)
        {
            ImageComboBoxItem item = ctrl.SelectedItem as ImageComboBoxItem;

            if (item == null)
            {
                return(0);
            }

            return(item.Value);
        }
        protected void Load生产状态(ImageComboBoxEdit combo)
        {
            combo.Properties.Items.Clear();
            List <string> states = new List <string>();

            for (int i = 0; i < UUT生产状态.Count; i++)
            {
                combo.Properties.Items.Add(new ImageComboBoxItem(UUT生产状态[i].ToString(), 0));
            }
            combo.Properties.Items.AddRange(states);
        }
示例#13
0
        private ImageComboBoxEdit createComboBox(string name, EventHandler textChangedHandler)
        {
            var comboBox = new ImageComboBoxEdit {
                Name = name
            };

            comboBox.Properties.AllowNullInput = DefaultBoolean.False;
            comboBox.TextChanged += textChangedHandler;
            comboBox.Enabled      = true;
            Controls.Add(comboBox);
            return(comboBox);
        }
示例#14
0
            static BaseEdit CreatePeriodEditor(Array values, string[] names)
            {
                ImageComboBoxEdit result = new ImageComboBoxEdit();

                for (int i = 0; i < values.Length && i < names.Length; i++)
                {
                    result.Properties.Items.Add(new ImageComboBoxItem(names[i], values.GetValue(i)));
                }
                result.Properties.PopupFormMinSize =
                    new System.Drawing.Size(result.Properties.PopupFormMinSize.Width,
                                            result.Properties.PopupFormMinSize.Height + 135);
                return(result);
            }
示例#15
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="cbFont"></param>
        public static void InitFontItems(ImageComboBoxEdit cbFont)
        {
            const int width  = 20;
            const int height = 16;
            const int offset = 1;

            var il = new ImageList {
                ImageSize = new Size(width, height)
            };

            var r = new Rectangle(offset, offset, width - offset * 2, height - offset * 2);

            cbFont.Properties.BeginUpdate();
            try
            {
                cbFont.Properties.Items.Clear();
                cbFont.Properties.SmallImages = il;

                int i;
                int j = 0;
                for (i = 0; i <= FontFamily.Families.Length - 1; i++)
                {
                    try
                    {
                        var    f  = new Font(FontFamily.Families[i].Name, 8);
                        string s  = (FontFamily.Families[i].Name);
                        var    im = new Bitmap(width, height);
                        using (Graphics g = Graphics.FromImage(im))
                        {
                            g.FillRectangle(Brushes.White, r);
                            g.DrawString("abc", f, Brushes.Black, offset, offset);
                            g.DrawRectangle(Pens.Black, r);
                        }

                        il.Images.Add(im);

                        cbFont.Properties.Items.Add(new ImageComboBoxItem(s, f, j));
                        j++;
                    }
                    catch (Exception ex)
                    {
                        Dbg.Debug("font items creation error:{0}", ex.ToString());
                    }
                }
            }
            finally
            {
                cbFont.Properties.CancelUpdate();
            }
        }
        protected virtual ImageComboBoxEdit CreateComboBoxControl(ModuleFieldInfo fieldInfo)
        {
            var comboBoxEdit = new ImageComboBoxEdit
            {
                Name = string.Format(CONSTANTS.COMBOX_NAME_FORMAT, fieldInfo.FieldName),
                Tag  = fieldInfo,
                EnterMoveNextControl = true
            };

            comboBoxEdit.Properties.LargeImages = ThemeUtils.Image16;
            comboBoxEdit.Properties.SmallImages = ThemeUtils.Image16;

            return(comboBoxEdit);
        }
示例#17
0
 /// <summary>
 /// 绑定ImageComBoBoxEdit下拉框数据
 /// </summary>
 /// <param name="cmb">ImageComBoBoxEdit的name</param>
 /// <param name="dt">数据源</param>
 /// <param name="key">显示名称</param>
 /// <param name="val">对应EditValue值</param>
 public static void BindImageComboBoxEdit(ImageComboBoxEdit cmb, DataTable dt, string key, string val)
 {
     cmb.Properties.Items.Clear();
     foreach (DataRow dr in dt.Rows)
     {
         ImageComboBoxItem item = new ImageComboBoxItem();
         item.Description = dr[key].ToString();
         item.Value       = dr[val].ToString();
         cmb.Properties.Items.Add(item);
     }
     if (cmb.Properties.Items.Count > 0)
     {
         cmb.SelectedIndex = 0;
     }
 }
示例#18
0
        /// <summary>
        /// 绑定ComboBox数据项
        /// </summary>
        /// <param name="cmb"></param>
        /// <param name="dtSource"></param>
        /// <param name="displayCol"></param>
        /// <param name="valueCol"></param>
        public static void BindImageComboBox(ImageComboBoxEdit cmb, DataTable dtSource, string filterExpression, string displayCol, string valueCol,
                                             bool showTipItem = false)
        {
            if (TmoShare.DataTableIsEmpty(dtSource) || cmb == null || string.IsNullOrWhiteSpace(displayCol) ||
                string.IsNullOrWhiteSpace(valueCol))
            {
                if (cmb != null)
                {
                    cmb.Properties.Items.Clear();
                }
                return;
            }

            cmb.Properties.Items.Clear();
            if (showTipItem)
            {
                ImageComboBoxItem itemtemp = new ImageComboBoxItem();
                itemtemp.Value       = null;
                itemtemp.Description = "请选择...";
                cmb.Properties.Items.Add(itemtemp);
            }

            DataRow[] rows = dtSource.Select(filterExpression);
            for (int i = 0; i < rows.Length; i++)
            {
                ImageComboBoxItem itemtemp1 = new ImageComboBoxItem();

                itemtemp1.Value       = rows[i][valueCol];
                itemtemp1.Description = rows[i][displayCol].ToString();
                cmb.Properties.Items.Add(itemtemp1);
            }


            if (cmb.Properties.Items.Count > 0)
            {
                if (cmb.SelectedIndex != 0)
                {
                    cmb.SelectedIndex = 0;
                }
            }
            else
            {
                cmb.SelectedIndex = -1;
            }
        }
示例#19
0
 /// <summary>
 /// 往来单位数据绑定
 /// </summary>
 public void FuzhuCommpany(ImageComboBoxEdit imageComboBoxEdit, string TargetType)
 {
     if (TargetType == "2")
     {
         string stateIn = string.Empty;
         imageComboBoxEdit.Properties.Items.Clear();
         DataTable dt = billImageComBox.BillImageComboxCompany1();
         dt.Rows.Add(0, "清空");
         foreach (DataRow dr in dt.Rows)
         {
             imageComboBoxEdit.Properties.Items.Add(new ImageComboBoxItem(dr["NAME"].ToString(),
                                                                          dr["ID"].ToString(),
                                                                          -1));
         }
         if (imageComboBoxEdit.Properties.Items.Count > 0)
         {
             imageComboBoxEdit.SelectedIndex = -1;
         }
         else
         {
             MessageBoxUtil.ShowInformation("数据丢失");
         }
     }
     else if (TargetType == "1")
     {
         string stateIn = string.Empty;
         imageComboBoxEdit.Properties.Items.Clear();
         DataTable dt = billImageComBox.DalImageComboxStorageClass(_sto_ID, Convert.ToDecimal(imageComboBoxEditAccType.EditValue));
         dt.Rows.Add(0, "清空");
         foreach (DataRow dr in dt.Rows)
         {
             imageComboBoxEdit.Properties.Items.Add(new ImageComboBoxItem(dr["NAME"].ToString(),
                                                                          dr["ID"].ToString(),
                                                                          -1));
         }
         if (imageComboBoxEdit.Properties.Items.Count > 0)
         {
             imageComboBoxEdit.SelectedIndex = -1;
         }
         else
         {
             MessageBoxUtil.ShowInformation("数据丢失");
         }
     }
 }
示例#20
0
        private void gridViewSummary_CustomRowCellEdit(object sender, DevExpress.XtraGrid.Views.Grid.CustomRowCellEditEventArgs e)
        {
            if (e.RowHandle < 0)
            {
                return;
            }

            //操作类型
            if (e.Column.Name == colTradeType_S.Name)
            {
                var cellValue = this.gridViewSummary.GetRowCellValue(e.RowHandle, this.colTradeType_S.FieldName).ToString();

                ImageComboBoxEdit imageComboBox = new ImageComboBoxEdit();
                imageComboBox.Properties.Items.AddRange(this.riImageComboBoxTradeType.Items);
                e.RepositoryItem = imageComboBox.Properties;

                foreach (ImageComboBoxItem item in imageComboBox.Properties.Items)
                {
                    if (cellValue == item.Value.ToString())
                    {
                        imageComboBox.SelectedItem = item;
                        return;
                    }
                }
            }

            //决策建议
            if (e.Column.Name == colDecision_S.Name)
            {
                var cellValue = this.gridViewSummary.GetRowCellValue(e.RowHandle, this.colDecision_S.FieldName).ToString();

                ImageComboBoxEdit imageComboBox = new ImageComboBoxEdit();
                imageComboBox.Properties.Items.AddRange(this.riImageComboBoxDecision.Items);
                e.RepositoryItem = imageComboBox.Properties;

                foreach (ImageComboBoxItem item in imageComboBox.Properties.Items)
                {
                    if (cellValue == item.Value.ToString())
                    {
                        imageComboBox.SelectedItem = item;
                        return;
                    }
                }
            }
        }
示例#21
0
        /// <summary>
        /// 绑定字典到ComboBox
        /// </summary>
        /// <param name="cmb">控件</param>
        /// <param name="classType">类型</param>
        /// <param name="field">属性名称</param>
        /// <param name="value">默认值</param>
        public static void BindDictToComboBox(ImageComboBoxEdit cmb, Type classType, string field, int?value = null)
        {
            var items = DictUtility.GetDictItem(classType, field);

            foreach (var item in items)
            {
                cmb.Properties.Items.Add(new ImageComboBoxItem
                {
                    Description = item.Value,
                    Value       = item.Key
                });
            }

            if (value != null)
            {
                cmb.EditValue = value.Value;
            }
        }
示例#22
0
        protected override void OnLoad(EventArgs e)
        {
            base.OnLoad(e);

            ImageComboBoxEdit comboBox = typeof(PrintEditorForm).GetField("icbInstalledPrinters", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.GetField | System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Instance).GetValue(this) as ImageComboBoxEdit;

            if (comboBox != null)
            {
                foreach (object item in comboBox.Properties.Items)
                {
                    if (item.ToString() == "Microsoft XPS Document Writer")
                    {
                        comboBox.Properties.Items.Remove(item);
                        return;
                    }
                }
            }
        }
        private void SetID(ImageComboBoxEdit ctrl, object value)
        {
            if (value == null)
            {
                ctrl.SelectedItem = null;
                return;
            }

            foreach (ImageComboBoxItem item in ctrl.Properties.Items)
            {
                if ((int)item.Value == (int)value)
                {
                    ctrl.SelectedItem = item;
                    return;
                }
            }

            ctrl.SelectedItem = null;
        }
示例#24
0
        private void CustomizeWidthSingleChoiceAction_CustomizeControl(object sender, CustomizeControlEventArgs e)
        {
            //Inside BarManager.
            BarEditItem barItem = e.Control as BarEditItem;

            if (barItem != null)
            {
                barItem.Width = 60; //BarManager scales controls itself
            }
            else
            {
                //Inside LayoutManager.
                ImageComboBoxEdit comboBoxEdit = e.Control as ImageComboBoxEdit;
                if (comboBoxEdit != null)
                {
                    comboBoxEdit.MinimumSize = new Size(ScaledWidth(60), 0);
                }
            }
        }
示例#25
0
        //----------------------------------------------------------------------------------------------------------
        /// <summary>
        /// Gets the selected path.
        /// </summary>
        /// <param name="cmbPath">The CMB path.</param>
        /// <returns>System.String.</returns>
        public static string GetSelectedPath(ImageComboBoxEdit cmbPath)
        {
            ImageComboBoxItem imageComboBoxItem = cmbPath.SelectedItem as ImageComboBoxItem;
            string            result;

            if (imageComboBoxItem == null)
            {
                result = null;
            }
            else
            {
                string text = imageComboBoxItem.Value.ToString();
                if (!text.EndsWith("\\"))
                {
                    text += "\\";
                }
                result = text;
            }
            return(result);
        }
示例#26
0
        /// <summary>
        ///   Initialize RepositoryItemImageComboBox
        /// </summary>
        /// <param name="imageComboBox"></param>
        /// <param name="source"></param>
        /// <param name="displayAdditionalItem"></param>
        /// <param name="additionalItemText"></param>
        /// <param name="additionalItemValue"></param>
        public static void Initialize(this ImageComboBoxEdit imageComboBox, IList <ImageComboBoxItem> source, bool displayAdditionalItem = false, string additionalItemText = " 全部 ", string additionalItemValue = "0")
        {
            var count = source.Count;

            if (displayAdditionalItem)
            {
                var allSelect = new ImageComboBoxItem
                {
                    Description = additionalItemText,
                    ImageIndex  = 0,
                    Value       = additionalItemValue,
                };

                imageComboBox.Properties.Items.Add(allSelect);
                count += 1;
            }
            imageComboBox.Properties.Items.AddRange(source.ToList());
            imageComboBox.Properties.NullText      = "请选择...";
            imageComboBox.Properties.DropDownRows  = count;
            imageComboBox.Properties.TextEditStyle = TextEditStyles.DisableTextEditor;
        }
示例#27
0
        /// <summary>
        /// 加载发票状态(包含全部项)
        /// </summary>
        /// <param name="imageComboBoxEditInvoiceState">发票状态下拉框控件</param>
        /// <param name="isAll">是否包含全部选项</param>
        protected void LoadInvoiceState(ImageComboBoxEdit imageComboBoxEditInvoiceState, bool isAll)
        {
            if (isAll)
            {
                imageComboBoxEditInvoiceState.Properties.Items.Add(new DevExpress.XtraEditors.Controls.ImageComboBoxItem("全部", 4, -1));
            }

            imageComboBoxEditInvoiceState.Properties.Items.AddRange(new DevExpress.XtraEditors.Controls.ImageComboBoxItem[] {
                new DevExpress.XtraEditors.Controls.ImageComboBoxItem("票到货到", 1, -1),
                new DevExpress.XtraEditors.Controls.ImageComboBoxItem("货到票未到", 2, -1),
                new DevExpress.XtraEditors.Controls.ImageComboBoxItem("票到货未到", 3, -1)
            });
            if (imageComboBoxEditInvoiceState.Properties.Items.Count > 0)
            {
                imageComboBoxEditInvoiceState.SelectedIndex = 0;
            }
            if (imageComboBoxEditInvoiceState.Name == "imageComboBoxEditInvoiceState")
            {
                imageComboBoxEditInvoiceState.SelectedIndex = -1;
            }
        }
示例#28
0
        /// <summary>
        /// 账册imagecombox数据绑定
        /// </summary>
        public void FuzhuAccount(ImageComboBoxEdit imageComboBoxEdit)
        {
            string stateIn = string.Empty;

            imageComboBoxEdit.Properties.Items.Clear();
            DataTable dt = billImageComBox.BillImageComboxAccount();

            foreach (DataRow dr in dt.Rows)
            {
                imageComboBoxEdit.Properties.Items.Add(new ImageComboBoxItem(dr["NAME"].ToString(),
                                                                             dr["CODE"].ToString(),
                                                                             -1));
            }
            if (imageComboBoxEdit.Properties.Items.Count > 0)
            {
                imageComboBoxEdit.SelectedIndex = -1;
            }
            else
            {
                MessageBoxUtil.ShowInformation("数据丢失");
            }
        }
示例#29
0
 /// <summary>
 /// 添加枚举下拉
 /// </summary>
 /// <param name="box">控件</param>
 /// <param name="enumType">枚举类型</param>
 /// <param name="ItemDescriptionDic">项翻译字典</param>
 public static void AddEnum(ImageComboBoxEdit box, Type enumType, Dictionary <string, string> ItemDescriptionDic)
 {
     box.Properties.BeginUpdate();
     try
     {
         Array values = System.Enum.GetValues(enumType);
         foreach (object obj in values)
         {
             string name        = obj.ToString();
             string description = name;
             if (ItemDescriptionDic.ContainsKey(name))
             {
                 description = ItemDescriptionDic[name];
             }
             box.Properties.Items.Add(new ImageComboBoxItem(description, obj, -1));
         }
     }
     finally
     {
         box.Properties.EndUpdate();
     }
 }
示例#30
0
        /// <summary>
        /// 出库分类绑定
        /// </summary>
        public void FuzhuBinType(ImageComboBoxEdit imageComboBoxEdit, decimal acc_ID)
        {
            string stateIn = string.Empty;

            imageComboBoxEdit.Properties.Items.Clear();
            DataTable dt = billImageComBox.DalImageComboxBoutType(acc_ID);

            foreach (DataRow dr in dt.Rows)
            {
                imageComboBoxEdit.Properties.Items.Add(new ImageComboBoxItem(dr["NAME"].ToString(),
                                                                             dr["ID"].ToString(),
                                                                             -1));
            }
            if (imageComboBoxEdit.Properties.Items.Count > 0)
            {
                imageComboBoxEdit.SelectedIndex = -1;
            }
            else
            {
                MessageBoxUtil.ShowInformation("数据丢失");
            }
        }
示例#31
0
 public static void ChangeCaptionImageComboBoxEdit(string parent_name, string language, ImageComboBoxEdit image_combobox_edit)
 {
     string temp = CaptionEngine.GetControlCaption(parent_name, image_combobox_edit.Name, BaseConstant.IMAGE_COMBOBOX_EDIT, language);
     if (temp != null && !string.IsNullOrEmpty(temp))
     {
         if (temp.StartsWith("@")) temp = temp.Substring(1);
         if (temp.EndsWith("@")) temp = temp.Substring(0, temp.Length - 1);
         string[] arr;
         if (temp.Contains("@"))
         {
             arr = temp.Split('@');
             for (int i = 0; i < image_combobox_edit.Properties.Items.Count; i++)
             {
                 if (i <= arr.Length + 1)
                     image_combobox_edit.Properties.Items[i].Description = arr[i];
             }
         }
     }
 }
示例#32
0
 /// <summary>
 /// 初始化ComboBox
 /// </summary>
 /// <param name="cbx">ComboBox控件</param>
 /// <param name="comboboxno">ComboBox配置编号</param>
 /// <param name="fieldtype">字段类型,如果是I则说明绑定此字段是Int类型,现在只支持Int和String类型的字段</param>
 public static void InitComboBox(ImageComboBoxEdit cbx, string comboboxno,string fieldtype)
 {
     string sSql = "SELECT sGridDisplayField,sGridColumnText, sEnGridColumnText "
                 + "FROM sysLookupSetting "
                 + "WHERE sType='ComboBox' AND sLookupNo='" + comboboxno + "'";
     DataTable dtTmp = DbHelperSQL.Query(sSql).Tables[0];
     if (dtTmp != null && dtTmp.Rows.Count > 0)
     {
         object[] ValueFields = Public.GetSplitString(dtTmp.Rows[0]["sGridDisplayField"].ToString(), ",");
         string[] DisplayText = Public.GetSplitString(LangCenter.Instance.IsDefaultLanguage ?
             dtTmp.Rows[0]["sGridColumnText"].ToString() : dtTmp.Rows[0]["sEnGridColumnText"].ToString(), ",");
         if (ValueFields.Length == DisplayText.Length)
         {
             cbx.Properties.Items.Clear();
             for (int i = 0; i < ValueFields.Length; i++)
             {
                 if (fieldtype == "I")
                 {
                     ImageComboBoxItem item = new ImageComboBoxItem();
                     item.Description = DisplayText[i];
                     item.Value=Convert.ToInt32(ValueFields[i]);
                     cbx.Properties.Items.Add(item);
                 }
                 else
                     cbx.Properties.Items.Add(new ImageComboBoxItem(DisplayText[i], ValueFields[i]));
             }
         }
         else
             Public.SystemInfo(LangCenter.Instance.GetSystemMessage("InitComboBoxFailed"), true);
     }
 }
示例#33
0
 /// <summary>
 /// 初始化ComboBox
 /// </summary>
 /// <param name="cbx">ComboBox控件</param>
 /// <param name="comboboxno">ComboBox配置编号</param>
 public static void InitComboBox(ImageComboBoxEdit cbx, string comboboxno)
 {
     InitComboBox(cbx, comboboxno, "");
 }
        /// <summary>
        /// 创建自定义控件
        /// </summary>
        public void CreateDynamicControl()
        {
            if (DynamicMasterTableData.Select("bSystemColumn=0").Length > 0)
            {
                pnlDynamic.Visible = true;

                //每行控件数
                int iControlColumn = Convert.ToInt32(DynamicMasterTableData.Rows[0]["iControlColumn"]);
                //控件间距
                int iControlSpace = Convert.ToInt32(DynamicMasterTableData.Rows[0]["iControlSpace"]);
                //先计算需要生成控件的数据,去除如果在自定义字段权限设置中设置为不可见的数据
                List<DataRow> drs = DynamicMasterTableData.Select("bSystemColumn=0 AND bShowInPanel=1").ToList();

                if (!SecurityCenter.IsAdmin && FormFieldSetting.Rows.Count > 0)
                {
                    for (int i = 0; i < drs.Count; i++)
                    {
                        //取只有是主表/单表的数据
                        foreach (DataRow drField in FormFieldSetting.Select("sTableName='" + MasterTableName + "'"))
                        {
                            if (drs[i]["sFieldName"].ToString() == drField["sFieldName"].ToString() &&
                                !Convert.ToBoolean(drField["bVisiable"]))
                            {
                                drs.Remove(drs[i]);
                            }
                        }
                    }
                }

                //计算控件总共行数
                int iRows = 0;
                if (drs.Count > 0)
                {
                    if (drs.Count % iControlColumn != 0)
                    {
                        iRows = (int)Math.Floor(Convert.ToDecimal(drs.Count / iControlColumn)) + 1;
                    }
                    else
                    {
                        iRows = Convert.ToInt32(drs.Count / iControlColumn);
                    }
                    //设置控件数计数
                    int iControl = 0;
                    for (int j = 0; j < iRows; j++)
                    {
                        for (int i = 0; i < iControlColumn; i++)
                        {
                            //控件类型
                            string sControlType = drs[iControl]["sControlType"].ToString();
                            //创建控件
                            //Lable大小控制为80X21,其他输入控件大小为120X21
                            Label lblControl = new Label();
                            lblControl.AutoSize = false;
                            lblControl.Size = new Size(80, 21);
                            lblControl.Location = new Point(ControlX + (80 + 120 + iControlSpace) * i, ControlY + (21 + 10) * j);
                            //控件命名规则:lbl+字段名
                            lblControl.Name = "lbl" + drs[iControl]["sFieldName"].ToString();
                            lblControl.TextAlign = ContentAlignment.BottomLeft;
                            //当控件类型为复选框\单选\Label标签时不创建Lable控件
                            if (sControlType != "chk" && sControlType != "rad" && sControlType != "lbl")
                            {
                                lblControl.Text = LangCenter.Instance.IsDefaultLanguage ? drs[iControl]["sCaption"].ToString() : drs[iControl]["sCaption"].ToString();
                            }
                            else
                                lblControl.Visible = false;
                            pnlDynamic.Controls.Add(lblControl);
                            switch (sControlType)
                            {
                                case "txt":
                                    {
                                        TextEdit txt = new TextEdit();
                                        txt.Size = new Size(120, 21);
                                        txt.Name = "txt" + drs[iControl]["sFieldName"].ToString();
                                        txt.Location = new Point(ControlX + (80 + 120 + iControlSpace) * i + 80, ControlY + 4 + (21 + 10) * j);
                                        pnlDynamic.Controls.Add(txt);
                                        break;
                                    }
                                case "mtxt":
                                    {
                                        MemoEdit mtxt = new MemoEdit();
                                        mtxt.Size = new Size(120, 21);
                                        mtxt.Name = "mtxt" + drs[iControl]["sFieldName"].ToString();
                                        mtxt.Location = new Point(ControlX + (80 + 120 + iControlSpace) * i + 80, ControlY + 4 + (21 + 10) * j);
                                        pnlDynamic.Controls.Add(mtxt);
                                        break;
                                    }
                                case "btxt":
                                    {
                                        MemoExEdit btxt = new MemoExEdit();
                                        btxt.Size = new Size(120, 21);
                                        btxt.Name = "btxt" + drs[iControl]["sFieldName"].ToString();
                                        btxt.Location = new Point(ControlX + (80 + 120 + iControlSpace) * i + 80, ControlY + 4 + (21 + 10) * j);
                                        pnlDynamic.Controls.Add(btxt);
                                        break;
                                    }
                                case "cbx":
                                    {
                                        ImageComboBoxEdit cbx = new ImageComboBoxEdit();
                                        cbx.Size = new Size(120, 21);
                                        cbx.Name = "cbx" + drs[iControl]["sFieldName"].ToString();
                                        cbx.Location = new Point(ControlX + (80 + 120 + iControlSpace) * i + 80, ControlY + 4 + (21 + 10) * j);
                                        pnlDynamic.Controls.Add(cbx);
                                        break;
                                    }
                                case "chk":
                                    {
                                        CheckEdit chk = new CheckEdit();
                                        chk.Size = new Size(120, 21);
                                        chk.Name = "chk" + drs[iControl]["sFieldName"].ToString();
                                        chk.Location = new Point(ControlX + (80 + 120 + iControlSpace) * i + 80, ControlY + 4 + (21 + 10) * j);
                                        chk.CheckState = CheckState.Unchecked;
                                        chk.Text = LangCenter.Instance.IsDefaultLanguage ? drs[iControl]["sCaption"].ToString() : drs[iControl]["sEngCaption"].ToString();
                                        pnlDynamic.Controls.Add(chk);
                                        break;
                                    }
                                case "det":
                                    {
                                        DateEdit det = new DateEdit();
                                        det.Size = new Size(120, 21);
                                        det.Name = "det" + drs[iControl]["sFieldName"].ToString();
                                        det.Location = new Point(ControlX + (80 + 120 + iControlSpace) * i + 80, ControlY + 4 + (21 + 10) * j);
                                        det.EditValue = null;
                                        pnlDynamic.Controls.Add(det);
                                        break;
                                    }
                                case "dett":
                                    {
                                        DateEdit dett = new DateEdit();
                                        dett.Size = new Size(120, 21);
                                        dett.Name = "dett" + drs[iControl]["sFieldName"].ToString();
                                        dett.Location = new Point(ControlX + (80 + 120 + iControlSpace) * i + 80, ControlY + 4 + (21 + 10) * j);
                                        dett.EditValue = null;
                                        dett.Properties.DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
                                        dett.Properties.DisplayFormat.FormatString = "g";
                                        dett.Properties.EditFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
                                        dett.Properties.EditFormat.FormatString = "g";
                                        dett.Properties.EditMask = "g";
                                        pnlDynamic.Controls.Add(dett);
                                        break;
                                    }
                                case "img":
                                    {
                                        ImageEdit img = new ImageEdit();
                                        img.Size = new Size(120, 21);
                                        img.Name = "img" + drs[iControl]["sFieldName"].ToString();
                                        img.Location = new Point(ControlX + (80 + 120 + iControlSpace) * i + 80, ControlY + 4 + (21 + 10) * j);
                                        pnlDynamic.Controls.Add(img);
                                        break;
                                    }
                                case "lbl":
                                    {
                                        LabelControl lbl = new LabelControl();
                                        lbl.Size = new Size(120, 21);
                                        lbl.Name = "lbl" + drs[iControl]["sFieldName"].ToString() + iControl.ToString();
                                        lbl.Location = new Point(ControlX + (80 + 120 + iControlSpace) * i + 80, ControlY + 4 + (21 + 10) * j);
                                        lbl.Text = LangCenter.Instance.IsDefaultLanguage ? drs[iControl]["sCaption"].ToString() : drs[iControl]["sEngCaption"].ToString();
                                        pnlDynamic.Controls.Add(lbl);
                                        break;
                                    }
                                case "lkp":
                                    {
                                        SunriseLookUp lkp = new SunriseLookUp();
                                        lkp.Size = new Size(120, 21);
                                        lkp.Name = "lkp" + drs[iControl]["sFieldName"].ToString();
                                        lkp.Location = new Point(ControlX + (80 + 120 + iControlSpace) * i + 80, ControlY + 4 + (21 + 10) * j);
                                        pnlDynamic.Controls.Add(lkp);
                                        break;
                                    }
                                case "mlkp":
                                    {
                                        SunriseMLookUp mlkp = new SunriseMLookUp();
                                        mlkp.Size = new Size(120, 21);
                                        mlkp.Name = "mlkp" + drs[iControl]["sFieldName"].ToString();
                                        mlkp.Location = new Point(ControlX + (80 + 120 + iControlSpace) * i + 80, ControlY + 4 + (21 + 10) * j);
                                        pnlDynamic.Controls.Add(mlkp);
                                        break;
                                    }
                                case "rad":
                                    {
                                        RadioGroup rad = new RadioGroup();
                                        rad.Size = new Size(120, 21);
                                        rad.Name = "rad" + drs[iControl]["sFieldName"].ToString();
                                        rad.Location = new Point(ControlX + (80 + 120 + iControlSpace) * i + 80, ControlY + 4 + (21 + 10) * j);
                                        pnlDynamic.Controls.Add(rad);
                                        break;
                                    }
                            }
                            iControl++;
                            //当计数大于等于要创建的控件数量时则退出循环
                            if (iControl >= drs.Count)
                                break;
                        }
                    }
                }
                pnlDynamic.Height = ControlY + iRows * 31;
            }
            //初始化数据绑定
            InitDataBindings();
        }
示例#35
0
 public static void ChangeCaptionImageComboBoxEdit(string parent_name, string language, ImageComboBoxEdit[] image_combobox_edits)
 {
     foreach (ImageComboBoxEdit image_combobox_edit in image_combobox_edits)
         ChangeCaptionImageComboBoxEdit(parent_name, language, image_combobox_edit);
 }