void repoTableNameChooser_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e) { String strTableName = this.TableName; TreeConfigNode obj = (TreeConfigNode)DataConfigTreeCtrl.GetDataRecordByNode(DataConfigTreeCtrl.FocusedNode); if (obj == null || (TreeConfigData)obj.InnerData == null) { return; } TreeConfigData configData = (TreeConfigData)obj.InnerData; strTableName = configData.TableName; String strOldTableName = strTableName; TableChooserForm chooser = new TableChooserForm(); String strResult = chooser.ShowChooseOne(strOldTableName); if (chooser.DialogResult == DialogResult.OK) { configData.TableName = strResult; } DataConfigTreeCtrl.RefreshDataSource(); DataConfigTreeCtrl.RefreshNode(DataConfigTreeCtrl.FocusedNode); }
void Menu_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { if (e.Item.Tag != null && e.Item.Tag.ToString() == "New") { TableChooserForm form = new TableChooserForm(); String strTableName = form.ShowChooseOne(); if (form.DialogResult == DialogResult.Cancel) { return; } if (DataStructureProvider.IsExistedTable(strTableName) == false) { return; } TreeConfigData configData = new TreeConfigData(); configData.Name = "objNew" + this.Manager.ConfigList.Count; configData.DefaultLoad = true; configData.TableName = strTableName; configData.ColumnFieldNames = new Dictionary <string, string>(); TreeConfigNode obj = (TreeConfigNode)DataConfigTreeCtrl.GetDataRecordByNode(DataConfigTreeCtrl.FocusedNode); if (obj == null) { new TreeConfigNode(Manager.RootConfig, configData); } else { configData.ParentTableName = obj.InnerData.TableName; configData.ParentField = DataStructureProvider.GetPrimaryKeyColumn(obj.InnerData.TableName); configData.ChildField = DataStructureProvider.GetForeignKeyOfTableName(configData.TableName, obj.InnerData.TableName); new TreeConfigNode(obj, configData); } UpdateDataConfigs(); RefreshDataConfigTree(); } if (e.Item.Tag != null && e.Item.Tag.ToString() == "Delete") { TreeConfigNode obj = (TreeConfigNode)DataConfigTreeCtrl.GetDataRecordByNode(DataConfigTreeCtrl.FocusedNode); if (obj == null || (TreeConfigData)obj.InnerData == null) { return; } DialogResult result = ABCHelper.ABCMessageBox.Show("Do you want to delete selected Object ? ", "Delete Object", MessageBoxButtons.YesNo); if (result == DialogResult.Yes) { obj.ParentNode.ChildrenNodes.Remove(obj.InnerData.Name); obj.ParentNode = null; UpdateDataConfigs(); RefreshDataConfigTree(); } } }
void repoFieldNameChooser_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e) { String strTableName = this.TableName; TreeConfigNode obj = (TreeConfigNode)DataConfigTreeCtrl.GetDataRecordByNode(DataConfigTreeCtrl.FocusedNode); if (obj == null || (TreeConfigData)obj.InnerData == null) { return; } TreeConfigData configData = (TreeConfigData)obj.InnerData; strTableName = configData.TableName; if (String.IsNullOrWhiteSpace(strTableName) == false) { String strOldFieldName = String.Empty; if (configData.ColumnFieldNames.ContainsKey(this.DataConfigTreeCtrl.FocusedColumn.Caption)) { strOldFieldName = configData.ColumnFieldNames[this.DataConfigTreeCtrl.FocusedColumn.Caption]; } FieldChooserEx chooser = new FieldChooserEx(strTableName, strOldFieldName); if (chooser.ShowDialog() == System.Windows.Forms.DialogResult.OK) { if (configData.ColumnFieldNames.ContainsKey(this.DataConfigTreeCtrl.FocusedColumn.Caption)) { configData.ColumnFieldNames[this.DataConfigTreeCtrl.FocusedColumn.Caption] = chooser.Result; } else { configData.ColumnFieldNames.Add(this.DataConfigTreeCtrl.FocusedColumn.Caption, chooser.Result); } } DataConfigTreeCtrl.RefreshNode(DataConfigTreeCtrl.FocusedNode); DataConfigTreeCtrl.RefreshDataSource(); UpdateDataConfigs(); DisplayTreeListCtrl.RefreshDataSource(); } }
public TreeConfigNode(TreeConfigNode parent, TreeConfigData _data) { this.ParentNode = parent; this.InnerData = _data; if (parent != null && parent.InnerData != null) { this.InnerData.Level = parent.InnerData.Level + 1; } if (this.ParentNode != null) { if (this.ParentNode.ChildrenNodes.ContainsKey(InnerData.Name) == false) { this.ParentNode.ChildrenNodes.Add(InnerData.Name, this); } else { this.ParentNode.ChildrenNodes[InnerData.Name] = this; } } }