public static void ShowValue(object value) { if (value == null) { return; } if (value is DataSet || value is DataTable) { Panel p = new Panel(); ComboBox cm = new ComboBox() { DropDownStyle = ComboBoxStyle.DropDownList, Dock = DockStyle.Top }; if (value is DataSet) { foreach (DataTable dt in ((DataSet)value).Tables) { cm.Items.Add(dt); } } else { cm.Items.Add(value); } cm.SelectedIndex = 0; DataGridView grid = new DataGridView(); grid.Dock = DockStyle.Fill; grid.RowHeadersWidthSizeMode = DataGridViewRowHeadersWidthSizeMode.AutoSizeToDisplayedHeaders; grid.DataSource = cm.SelectedItem; grid.ShowRowErrors = true; grid.ShowEditingIcon = true; grid.ShowCellErrors = true; cm.SelectedIndexChanged += (a, b) => { grid.DataSource = (DataTable)cm.SelectedItem; }; p.Controls.Add(grid); p.Controls.Add(cm); FOkCancel.ShowForm("Debug", p); } else { FEditObjectProperties.ShowForm("Debug", value); } }
protected override IData OnProcessData(IData data, EEnumerableDataState state) { object o = data.GetInternalObject(); if (o == null) { return(null); } if (!FEditObjectProperties.ShowForm(FormTitle, o)) { return(null); } return(data); }