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; } } }
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(); } }; } }
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); }
/// <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; } }
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; }
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; }
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; }
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; }
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); }
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); }
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); }
/// <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); }
/// <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; } }
/// <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; } }
/// <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("数据丢失"); } } }
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; } } } }
/// <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; } }
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; }
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); } } }
//---------------------------------------------------------------------------------------------------------- /// <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); }
/// <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; }
/// <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; } }
/// <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("数据丢失"); } }
/// <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(); } }
/// <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("数据丢失"); } }
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]; } } } }
/// <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); } }
/// <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(); }
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); }