public void FillData() { dt = new DataTable(); dtG = UnitDirBL.GetOCGMaster(); DataRow dr; dr = dtG.NewRow(); dr["GroupId"] = 0; dr["GroupName"] = "None"; dtG.Rows.InsertAt(dr, 0); DevExpress.XtraEditors.Repository.RepositoryItemLookUpEdit cboOC = new DevExpress.XtraEditors.Repository.RepositoryItemLookUpEdit(); cboOC.DataSource = dtG; cboOC.PopulateColumns(); cboOC.ValueMember = "GroupId"; cboOC.DisplayMember = "GroupName"; cboOC.Columns["GroupId"].Visible = false; cboOC.ShowFooter = false; cboOC.ShowHeader = false; dt = UnitDirBL.GetOCGList(); grdOC.DataSource = dt; grdOC.ForceInitialize(); grdOCView.PopulateColumns(); grdOCView.Columns["OtherCostId"].Visible = false; grdOCView.Columns["GroupId"].Caption = "GroupName"; grdOCView.Columns["GroupId"].ColumnEdit = cboOC; cboOC.EditValueChanged += new EventHandler(cboOC_EditValueChanged); grdOCView.OptionsCustomization.AllowFilter = true; grdOCView.OptionsBehavior.AllowIncrementalSearch = true; grdOCView.OptionsView.ShowAutoFilterRow = false; grdOCView.OptionsView.ShowViewCaption = false; grdOCView.OptionsView.ShowFooter = true; grdOCView.OptionsSelection.MultiSelectMode = GridMultiSelectMode.CellSelect; grdOCView.OptionsSelection.InvertSelection = false; grdOCView.OptionsView.ColumnAutoWidth = true; grdOCView.Appearance.HeaderPanel.Font = new Font(grdOCView.Appearance.HeaderPanel.Font, FontStyle.Bold); grdOCView.FocusedRowHandle = 0; grdOCView.FocusedColumn = grdOCView.VisibleColumns[0]; grdOCView.Appearance.FocusedCell.BackColor = Color.Teal; grdOCView.Appearance.FocusedCell.ForeColor = Color.White; grdOCView.Appearance.FocusedRow.ForeColor = Color.Teal; grdOCView.Appearance.FocusedRow.BackColor = Color.White; }
private void PopulateGrid() { DataTable dt = new DataTable(); dtOC = new DataTable(); dt = ProjectInfoBL.GetOtherCostType(); dtOC = ProjectInfoBL.GetOCTypeMaster(); DataRow dr; dr = dtOC.NewRow(); dr["OCTypeId"] = 0; dr["OCTypeName"] = "None"; dtOC.Rows.InsertAt(dr, 0); DevExpress.XtraEditors.Repository.RepositoryItemLookUpEdit cboOC = new DevExpress.XtraEditors.Repository.RepositoryItemLookUpEdit(); cboOC.DataSource = dtOC; cboOC.PopulateColumns(); cboOC.ValueMember = "OCTypeId"; cboOC.DisplayMember = "OCTypeName"; cboOC.Columns["OCTypeId"].Visible = false; cboOC.ShowFooter = false; cboOC.ShowHeader = false; grdOC.DataSource = dt; grdViewOC.PopulateColumns(); grdViewOC.Columns["OCTypeId"].Caption = "TypeName"; grdViewOC.Columns["OtherCostId"].Visible = false; grdViewOC.Columns["OtherCostName"].OptionsColumn.AllowEdit = false; grdViewOC.Columns["OCTypeId"].ColumnEdit = cboOC; cboOC.EditValueChanged += new EventHandler(cboOC_EditValueChanged); grdViewOC.Appearance.HeaderPanel.Font = new Font(grdViewOC.Appearance.HeaderPanel.Font, FontStyle.Bold); grdViewOC.OptionsSelection.InvertSelection = true; grdViewOC.OptionsSelection.EnableAppearanceHideSelection = false; grdViewOC.Appearance.FocusedRow.BackColor = Color.Teal; grdViewOC.Appearance.FocusedRow.ForeColor = Color.White; }
/// <summary> /// 直接設定DataTable給RepositoryItemLookUpEdit /// </summary> /// <param name="cbx"></param> /// <param name="dataSource">dataTable or Dictionary(k,v)</param> /// <param name="valueMember">valueMember</param> /// <param name="displayMember">displayMember</param> /// <param name="textEditStyles">Standard=可輸入 DisableTextEditor=不可輸入,單純的下拉選單</param> /// <param name="nullText">nullText</param> public static void SetColumnLookUp(this DevExpress.XtraEditors.Repository.RepositoryItemLookUpEdit cbx, object dataSource, string valueMember, string displayMember = "CP_DISPLAY", TextEditStyles textEditStyles = TextEditStyles.Standard, string nullText = "--請選擇--" ) { //一些基本參數設定 //cbx.EnterMoveNextControl = true; cbx.NullText = nullText; cbx.DropDownRows = 10; //一次顯示的下拉選單項目數量(太多或太少都不好) cbx.BestFitMode = BestFitMode.BestFitResizePopup; cbx.SearchMode = SearchMode.AutoFilter; //SearchMode.AutoFilter=輸入框每次輸入,都直接過濾下拉選項 cbx.AutoSearchColumnIndex = 1; cbx.TextEditStyle = textEditStyles; //Standard=可輸入 DisableTextEditor=不可輸入,單純的下拉選單 cbx.ShowHeader = false; cbx.ShowFooter = false; cbx.DataSource = dataSource; cbx.ForceInitialize(); cbx.PopulateColumns(); cbx.DisplayMember = displayMember; cbx.ValueMember = valueMember; //把不需要顯示的欄位隱藏 foreach (LookUpColumnInfo col in cbx.Columns) { if (!string.IsNullOrEmpty(displayMember)) { if (col.FieldName.ToUpper() != displayMember.ToUpper()) { col.Visible = false; } } } }