public static RepositoryItemLookUpEdit GetCotPLLookUp( string IDField, string DisplayField, DataTable DataLookup, string[] LookupVisibleFields, string[] Captions, string ColumnField, bool AllowBlank, params int[] Widths) { RepositoryItemLookUpEdit lookup = new RepositoryItemLookUpEdit(); if (AllowBlank) { DataRow row = DataLookup.NewRow(); row[IDField] = -1; row[DisplayField] = ""; DataLookup.Rows.InsertAt(row, 0); } lookup.DataSource = DataLookup; lookup.ValueMember = IDField; lookup.DisplayMember = DisplayField; lookup.ImmediatePopup = true; lookup.ShowLines = true; lookup.NullText = GlobalConst.NULL_TEXT; int totalWidth = 0; if (LookupVisibleFields != null) { for (int i = 0; i < LookupVisibleFields.Length; i++) { LookUpColumnInfo colLook = new LookUpColumnInfo(); colLook.FieldName = LookupVisibleFields[i]; colLook.Caption = Captions[i]; if (Widths != null && Widths.Length > i) colLook.Width = Widths[i]; else colLook.Width = 40; totalWidth += colLook.Width; lookup.Columns.Add(colLook); } } lookup.PopupWidth = totalWidth; lookup.TextEditStyle = TextEditStyles.Standard; if (Widths == null && Widths.Length > 0) lookup.BestFit(); return lookup; }
private RepositoryItemLookUpEdit getLookUpEdit() { RepositoryItemLookUpEdit lookUpEdit = new RepositoryItemLookUpEdit(); DataTable tempData = new DataTable(); string factorPriorityName = StaticResource.factorPriorityStr; tempData.Columns.Add(factorPriorityName, factorPriorityName.GetType()); List <int> priorityList = new List <int>(); foreach (KeyValuePair <int, Color> kv in this.controller.project.PriorityColorDict) { priorityList.Add(kv.Key); } priorityList.Reverse(); foreach (int priority in priorityList) { tempData.Rows.Add(new object[1] { priority }); } lookUpEdit.ValueMember = factorPriorityName; lookUpEdit.DisplayMember = factorPriorityName; lookUpEdit.DataSource = tempData; lookUpEdit.BestFitWidth = 70; lookUpEdit.BestFit(); return(lookUpEdit); }
public static RepositoryItemLookUpEdit GetCotPLLookUp(string IDField, string DisplayField, DataTable DataLookup, string[] LookupVisibleFields, string[] Captions, string ColumnField, bool AllowBlank, params int[] Widths) { RepositoryItemLookUpEdit edit = new RepositoryItemLookUpEdit(); if (AllowBlank) { DataRow row = DataLookup.NewRow(); row[IDField] = -1; row[DisplayField] = ""; DataLookup.Rows.InsertAt(row, 0); } edit.DataSource = DataLookup; edit.ValueMember = IDField; edit.DisplayMember = DisplayField; edit.ImmediatePopup = true; edit.ShowLines = true; //edit.NullText=GlobalConst.NULL_TEXT); int num = 0; if (LookupVisibleFields != null) { for (int i = 0; i < LookupVisibleFields.Length; i++) { LookUpColumnInfo info = new LookUpColumnInfo(); info.FieldName = LookupVisibleFields[i]; info.Caption = Captions[i]; if (Widths != null) { info.Width = Widths[i]; } else { info.Width = 40; } num += info.Width; edit.Columns.Add(info); } } edit.PopupWidth = num; edit.TextEditStyle = 0; if (Widths == null) { edit.BestFit(); } return(edit); }
protected override ResultStatus Open() { base.Open(); #if DEBUG txtMonth.Text = "2019/01"; #endif #region 處理下拉選單 _RepLookUpEdit = new RepositoryItemLookUpEdit(); //DataTable dtProd_Type = new DataTable(); //dtProd_Type.Columns.Add("ID"); //dtProd_Type.Columns.Add("DESC"); //DataRow ptRow1 = dtProd_Type.NewRow(); //ptRow1["ID"] = "F"; //ptRow1["DESC"] = "期貨"; //dtProd_Type.Rows.Add(ptRow1); //DataRow ptRow2 = dtProd_Type.NewRow(); //ptRow2["ID"] = "O"; //ptRow2["DESC"] = "選擇權"; //dtProd_Type.Rows.Add(ptRow2); //_RepLookUpEdit.DataSource = dtProd_Type; //_RepLookUpEdit.ValueMember = "ID"; //_RepLookUpEdit.DisplayMember = "DESC"; //_RepLookUpEdit.ShowHeader = false; //_RepLookUpEdit.ShowFooter = false; //_RepLookUpEdit.NullText = ""; //LookUpColumnInfoCollection singleCol2 = _RepLookUpEdit.Columns; //singleCol2.Add(new LookUpColumnInfo("DESC")); DataTable dtProd_Type = new CODW().ListLookUpEdit("APDK", "APDK_PROD_TYPE"); Extension.SetColumnLookUp(_RepLookUpEdit, dtProd_Type, "CODW_ID", "CODW_DESC", TextEditStyles.DisableTextEditor, ""); gcMain.RepositoryItems.Add(_RepLookUpEdit); MMWK_PROD_TYPE.ColumnEdit = _RepLookUpEdit; //調整下拉選單長度 _RepLookUpEdit.DropDownRows = dtProd_Type.Rows.Count; _RepLookUpEdit.BestFit(); #endregion return(ResultStatus.Success); }
public static RepositoryItemLookUpEdit CreateEditLookUp(string sFieldName, XElement colDefinition, DataTable dt, bool bReadOnlyDataTable) { //if (col == null) return; //if (gbTrace) cTrace.StartNestedLevel("SetGridColumnEditLookUp2"); RepositoryItemLookUpEdit look = new RepositoryItemLookUpEdit(); string sLookUpName = colDefinition.zAttribValue("LookUpName"); //if (sLookUpName == null) sLookUpName = "PKT_Grid_LookUp_" + col.FieldName; if (sLookUpName == null) sLookUpName = "PKT_Grid_LookUp_" + sFieldName; look.Name = sLookUpName; ((System.ComponentModel.ISupportInitialize)look).BeginInit(); //view.GridControl.RepositoryItems.AddRange(new RepositoryItem[] { look }); look.Buttons.AddRange(new EditorButton[] { new EditorButton(ButtonPredefines.Combo) }); //col.ColumnEdit = look; look.AutoHeight = false; look.NullText = ""; string sNullText = colDefinition.zAttribValue("NullText"); if (sNullText != null) look.NullText = sNullText; //if (gbTrace) cTrace.StartNestedLevel("SetDataSource"); look.DataSource = dt; look.PopulateColumns(); if (look.Columns.Count == 0) throw new GridException("Error in lookup \"{0}\" no column in data source", sFieldName); //if (gbTrace) cTrace.StopNestedLevel("SetDataSource"); //if (gbTrace) cTrace.StartNestedLevel("SetLookUpGridColumn"); string sColumn = colDefinition.zAttribValue("Column"); SetLookUpGridColumn(look, sColumn); //if (gbTrace) cTrace.StopNestedLevel("SetLookUpGridColumn"); //if (gbTrace) cTrace.StartNestedLevel("BestFit"); look.BestFit(); //if (gbTrace) cTrace.StopNestedLevel("BestFit"); //if (gbTrace) cTrace.StartNestedLevel("DisplayMember"); // définition de look.DisplayMember string sDisplay = colDefinition.zAttribValue("Display"); if (sDisplay != null) { if (look.Columns[sDisplay] != null) look.DisplayMember = sDisplay; else throw new GridException("Error in lookup \"{0}\" no display column, column {0} does'nt exist in data source", sFieldName, sDisplay); } else { look.DisplayMember = look.Columns[0].FieldName; for (int i = 0; i < look.Columns.Count; i++) if (look.Columns[i].FieldName != sFieldName) { look.DisplayMember = look.Columns[i].FieldName; break; } } //if (gbTrace) cTrace.StopNestedLevel("DisplayMember"); if (look.DisplayMember != sFieldName) { if (look.Columns[sFieldName] != null) look.Columns[sFieldName].Visible = false; } //if (gbTrace) cTrace.StartNestedLevel("ValueMember"); // définition de look.ValueMember string sValue = colDefinition.zAttribValue("Value"); if (sValue != null) { if (look.Columns[sValue] != null) look.ValueMember = sValue; else throw new GridException("Error in lookup \"{0}\" no value column, column {0} does'nt exist in data source", sFieldName, sValue); } else { if (look.Columns[sFieldName] != null) look.ValueMember = sFieldName; else look.ValueMember = look.DisplayMember; } //if (gbTrace) cTrace.StopNestedLevel("ValueMember"); //if (gbTrace) cTrace.StartNestedLevel("AddNullRow"); string sAddNullRow = colDefinition.zAttribValue("AddNullRow"); if (!bReadOnlyDataTable && sAddNullRow != null && sAddNullRow.ToLower() == "true") { DataRow dataRow = dt.NewRow(); if (look.DisplayMember != look.ValueMember) dataRow[look.DisplayMember] = look.NullText; dt.Rows.InsertAt(dataRow, 0); } //if (gbTrace) cTrace.StopNestedLevel("AddNullRow"); //look.TextEditStyle = TextEditStyles.Standard; look.SearchMode = SearchMode.OnlyInPopup; ((System.ComponentModel.ISupportInitialize)look).EndInit(); //if (gbTrace) cTrace.StopNestedLevel("SetGridColumnEditLookUp2"); return look; }