private DataGridColumn GetDataGridColumn(FBGridItem gItem) { Binding bding = new Binding(); if (!string.IsNullOrEmpty(gItem.PropertyName)) { bding.Mode = BindingMode.TwoWay; bding.Path = new PropertyPath(gItem.PropertyName); bding.Converter = new FBGridValueConverter(gItem); } else { System.Diagnostics.Debug.WriteLine(""); } DataGridColumn dgc = null; switch (gItem.CType) { case FBControlType.CheckBox: DataGridCheckBoxColumn dgcc = new DataGridCheckBoxColumn(); dgcc.IsThreeState = false; dgcc.Binding = bding; dgc = dgcc; break; case FBControlType.Label: DataGridTextColumn dgtc = new DataGridTextColumn(); dgtc.Binding = bding; if (!gItem.IsReadOnly) { dgtc.CellStyle = writtableStyle; } dgc = dgtc; break; case FBControlType.Combobox: DataGridComboBoxColumn dgcbc = new DataGridComboBoxColumn(); //if (gItem.ReferenceDataInfo != null) //{ // IList<ITextValueItem> list = DataCore.GetRefData(gItem.ReferenceDataInfo.Type); // dgcbc.ItemsSource = list; //} dgcbc.DisplayMemberPath = "Text"; dgcbc.Binding = bding; dgc = dgcbc; break; } return(dgc); }
public MyDataGridTextColumn(FBGridItem gridItem) { this.GridItem = gridItem; }
public FBGridValueConverter(FBGridItem item) { this.FBGridItem = item; }