public static string GetDistinctName(string sName, CWindowControlMgr WindowControlMgr) { int idx = 2; string sRetName = sName; List <CBaseObject> lstObj = WindowControlMgr.GetList(); while (true) { bool bHas = false; foreach (CBaseObject obj in lstObj) { CWindowControl WindowControl = (CWindowControl)obj; if (WindowControl.Name.Equals(sRetName, StringComparison.OrdinalIgnoreCase)) { bHas = true; break; } } if (!bHas) { return(sRetName); } else { sRetName = string.Format("{0}{1}", sName, idx); } idx++; } }
void SelectElement(Control ctrlEl) { m_CurSelDesignEl = ctrlEl; IDesignEl designEl = (IDesignEl)m_CurSelDesignEl; ShowFocusDot(ctrlEl); if (m_CurSelDesignEl == null) { return; } CWindowControl WindowControl = (CWindowControl)m_CurSelDesignEl.Tag; if (WindowControl.m_objTempData == null) { TableGridProp Setting = new TableGridProp(); Setting.宽度 = m_CurSelDesignEl.Width; Setting.高度 = m_CurSelDesignEl.Height; Setting.停靠 = m_CurSelDesignEl.Dock; if (designEl.GetCtrlType() == ControlType.TableGrid) { TableGridEl te = (TableGridEl)designEl; Setting.工具栏显示 = te.TableInWindowControl.ShowToolBar; Setting.标题栏显示 = te.TableInWindowControl.ShowTitleBar; } else if (designEl.GetCtrlType() == ControlType.TableTree) { } WindowControl.m_objTempData = Setting; } m_AttributeToolWindow.ControlEl = m_CurSelDesignEl; }
void listBox_SelectedIndexChanged(object sender, EventArgs e) { ListBox list = (ListBox)sender; UIListBox lb = (UIListBox)list.Parent; CWindowControl WindowControl = (CWindowControl)lb.Tag; RefreshLinkageWindowControl(WindowControl); }
void comboBox_SelectedIndexChanged(object sender, EventArgs e) { ComboBox comboBox = (ComboBox)sender; UIComboBox cb = (UIComboBox)comboBox.Parent; CWindowControl WindowControl = (CWindowControl)cb.Tag; RefreshLinkageWindowControl(WindowControl); }
void dataGridView_CellClick(object sender, DataGridViewCellEventArgs e) { DataGridView dv = (DataGridView)sender; TableGrid te = (TableGrid)dv.Parent; CWindowControl WindowControl = (CWindowControl)te.Tag; RefreshLinkageWindowControl(WindowControl); }
private void MenuItemDelete_Click(object sender, EventArgs e) { CWindowControl WindowControl = (CWindowControl)m_CurSelDesignEl.Tag; WindowControl.m_ObjectMgr.Delete(WindowControl); m_CurSelDesignEl.Parent.Controls.Remove(m_CurSelDesignEl); m_CurSelDesignEl = null; SelectElement(m_CurSelDesignEl); }
void treeView_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e) { TreeView tree = (TreeView)sender; tree.SelectedNode = e.Node; TableTree tt = (TableTree)tree.Parent; CWindowControl WindowControl = (CWindowControl)tt.Tag; RefreshLinkageWindowControl(WindowControl); }
public void MenuItemDelete_Click(object sender, EventArgs e) { CWindowControl WindowControl = (CWindowControl)this.Tag; if (WindowControl == null) { return; } WindowControl.m_ObjectMgr.Delete(WindowControl); this.Parent.Controls.Remove(this); }
public void OnDelete() { if (m_CurSelDesignEl == null) { MessageBox.Show("请选择一项!"); return; } CWindowControl WindowControl = (CWindowControl)m_CurSelDesignEl.Tag; WindowControl.m_ObjectMgr.Delete(WindowControl); m_CurSelDesignEl.Parent.Controls.Remove(m_CurSelDesignEl); m_CurSelDesignEl = null; SelectElement(null); }
private void listLinkageWindowControl_ItemChecked(object sender, ItemCheckedEventArgs e) { if (m_bIsLoading) { return; } CWindowControl WindowControl = (CWindowControl)ControlEl.Tag; CWindowControl wc = (CWindowControl)e.Item.Tag; if (e.Item.Checked) { List <CBaseObject> lstLWC = WindowControl.LinkageWindowControlMgr.GetList(); bool bHas = false; foreach (CBaseObject obj in lstLWC) { CLinkageWindowControl lwc = (CLinkageWindowControl)obj; if (lwc.SlaveID == wc.Id) { bHas = true; break; } } if (!bHas) { CLinkageWindowControl lwc = new CLinkageWindowControl(); lwc.MasterID = WindowControl.Id; lwc.SlaveID = wc.Id; lwc.Ctx = Program.Ctx; WindowControl.LinkageWindowControlMgr.AddNew(lwc); } } else { List <CBaseObject> lstLWC = WindowControl.LinkageWindowControlMgr.GetList(); foreach (CBaseObject obj in lstLWC) { CLinkageWindowControl lwc = (CLinkageWindowControl)obj; if (lwc.SlaveID == wc.Id) { WindowControl.LinkageWindowControlMgr.Delete(lwc); break; } } } }
private void richTextFilter_TextChanged(object sender, EventArgs e) { CWindowControl WindowControl = (CWindowControl)ControlEl.Tag; IDesignEl designEl = (IDesignEl)ControlEl; if (designEl.GetCtrlType() == ControlType.TableGrid) { CTableInWindowControl TableInWindowControl = (CTableInWindowControl)WindowControl.TableInWindowControlMgr.GetFirstObj(); TableInWindowControl.QueryFilter = richTextFilter.Text.Trim(); TableInWindowControl.m_CmdType = CmdType.Update; } else if (designEl.GetCtrlType() == ControlType.ListBox) { CTableInWindowControl TableInWindowControl = (CTableInWindowControl)WindowControl.TableInWindowControlMgr.GetFirstObj(); TableInWindowControl.QueryFilter = richTextFilter.Text.Trim(); TableInWindowControl.m_CmdType = CmdType.Update; } else if (designEl.GetCtrlType() == ControlType.ComboBox) { CTableInWindowControl TableInWindowControl = (CTableInWindowControl)WindowControl.TableInWindowControlMgr.GetFirstObj(); TableInWindowControl.QueryFilter = richTextFilter.Text.Trim(); TableInWindowControl.m_CmdType = CmdType.Update; } }
private void propertyGrid_PropertyValueChanged(object s, PropertyValueChangedEventArgs e) { if (m_AttrType == AttrType.WindowControl) { CWindowControl WindowControl = (CWindowControl)ControlEl.Tag; IDesignEl designEl = (IDesignEl)ControlEl; if (designEl.GetCtrlType() == ControlType.NavBar) { if (e.ChangedItem.Label == "名称") { WindowControl.Name = e.ChangedItem.Value.ToString(); } else if (e.ChangedItem.Label == "停靠") { ControlEl.Dock = (DockStyle)e.ChangedItem.Value; WindowControl.Dock = (int)ControlEl.Dock; } } else if (designEl.GetCtrlType() == ControlType.TableGrid) { TableGridEl te = (TableGridEl)ControlEl; if (e.ChangedItem.Label == "名称") { WindowControl.Name = e.ChangedItem.Value.ToString(); } else if (e.ChangedItem.Label == "停靠") { te.Dock = (DockStyle)e.ChangedItem.Value; WindowControl.Dock = (int)te.Dock; } else if (e.ChangedItem.Label == "工具栏显示") { te.ShowToolBar = (bool)e.ChangedItem.Value; te.TableInWindowControl.ShowToolBar = te.ShowToolBar; te.TableInWindowControl.m_CmdType = CmdType.Update; } else if (e.ChangedItem.Label == "标题栏显示") { te.ShowTitleBar = (bool)e.ChangedItem.Value; te.TableInWindowControl.ShowTitleBar = te.ShowTitleBar; te.TableInWindowControl.m_CmdType = CmdType.Update; } } else if (designEl.GetCtrlType() == ControlType.TableTree) { TableTreeEl tree = (TableTreeEl)ControlEl; if (e.ChangedItem.Label == "名称") { WindowControl.Name = e.ChangedItem.Value.ToString(); } else if (e.ChangedItem.Label == "停靠") { tree.Dock = (DockStyle)e.ChangedItem.Value; WindowControl.Dock = (int)tree.Dock; } else if (e.ChangedItem.Label == "标题栏显示") { tree.ShowTitleBar = (bool)e.ChangedItem.Value; WindowControl.ShowTitleBar = tree.ShowTitleBar; } } else if (designEl.GetCtrlType() == ControlType.ListBox) { UIListBoxEl list = (UIListBoxEl)ControlEl; if (e.ChangedItem.Label == "名称") { WindowControl.Name = e.ChangedItem.Value.ToString(); } else if (e.ChangedItem.Label == "停靠") { list.Dock = (DockStyle)e.ChangedItem.Value; WindowControl.Dock = (int)list.Dock; } else if (e.ChangedItem.Label == "标题栏显示") { list.ShowTitleBar = (bool)e.ChangedItem.Value; WindowControl.ShowTitleBar = list.ShowTitleBar; } } else if (designEl.GetCtrlType() == ControlType.ComboBox) { UIComboBoxEl comb = (UIComboBoxEl)ControlEl; if (e.ChangedItem.Label == "名称") { ControlEl.Name = e.ChangedItem.Value.ToString(); WindowControl.Name = e.ChangedItem.Value.ToString(); } else if (e.ChangedItem.Label == "停靠") { comb.Dock = (DockStyle)e.ChangedItem.Value; WindowControl.Dock = (int)comb.Dock; } else if (e.ChangedItem.Label == "标题栏显示") { comb.ShowTitleBar = (bool)e.ChangedItem.Value; WindowControl.ShowTitleBar = comb.ShowTitleBar; } } else if (designEl.GetCtrlType() == ControlType.TableTab) { TableTabEl tab = (TableTabEl)ControlEl; if (e.ChangedItem.Label == "名称") { WindowControl.Name = e.ChangedItem.Value.ToString(); } else if (e.ChangedItem.Label == "停靠") { tab.Dock = (DockStyle)e.ChangedItem.Value; WindowControl.Dock = (int)tab.Dock; } else if (e.ChangedItem.Label == "工具栏显示") { TableGridEl grid = tab.GetCurTableGridEl(); if (grid != null) { grid.ShowToolBar = (bool)e.ChangedItem.Value; grid.TableInWindowControl.ShowToolBar = grid.ShowToolBar; grid.TableInWindowControl.m_CmdType = CmdType.Update; } } else if (e.ChangedItem.Label == "标题栏显示") { tab.ShowTitleBar = (bool)e.ChangedItem.Value; WindowControl.ShowTitleBar = tab.ShowTitleBar; } } WindowControl.m_ObjectMgr.Update(WindowControl); } else { CWindow window = (CWindow)WindowEl.Window; if (e.ChangedItem.Label == "名称") { window.Name = e.ChangedItem.Value.ToString(); } else if (e.ChangedItem.Label == "宽度") { WindowEl.Width = (int)e.ChangedItem.Value; window.Width = WindowEl.Width; } else if (e.ChangedItem.Label == "高度") { WindowEl.Height = (int)e.ChangedItem.Value; window.Height = WindowEl.Height; } window.m_ObjectMgr.Update(window); } }
public void OnDragDrop(DockStyle dock, ListViewItem item) { Panel panel = panelFill; if (dock == DockStyle.Top) { panel = panelTop; } else if (dock == DockStyle.Bottom) { panel = panelBottom; } else if (dock == DockStyle.Left) { panel = panelLeft; } else if (dock == DockStyle.Right) { panel = panelRight; } if (item.Text.Equals("ToolBar", StringComparison.OrdinalIgnoreCase)) { string sCtrlName = GetDistinctName("导航栏", Window.WindowControlMgr); CWindowControl WindowControl = new CWindowControl(); WindowControl.CtrlType = ControlType.NavBar; WindowControl.Ctx = Program.Ctx; WindowControl.Name = sCtrlName; WindowControl.Dock = (int)dock; WindowControl.UI_Window_id = Window.Id; Window.WindowControlMgr.AddNew(WindowControl); NavigateBarEl nb = new NavigateBarEl(); nb.WindowControl = WindowControl; nb.Tag = WindowControl; panel.Controls.Add(nb); nb.Dock = DockStyle.Fill; nb.BringToFront(); nb.flowLayoutPanel.MouseClick += new MouseEventHandler(childCtrl_MouseClick); SelectElement(nb); } else if (item.Text.Equals("DataGrid", StringComparison.OrdinalIgnoreCase)) { SelTableForm frm = new SelTableForm(); if (frm.ShowDialog() != DialogResult.OK) { return; } string sCtrlName = GetDistinctName(frm.m_SelTable.Name, Window.WindowControlMgr); CWindowControl WindowControl = new CWindowControl(); WindowControl.CtrlType = ControlType.TableGrid; WindowControl.Ctx = Program.Ctx; WindowControl.Name = sCtrlName; WindowControl.Dock = (int)dock; WindowControl.UI_Window_id = Window.Id; Window.WindowControlMgr.AddNew(WindowControl); CTableInWindowControl tiwc = new CTableInWindowControl(); tiwc.Ctx = Program.Ctx; tiwc.FW_Table_id = frm.m_SelTable.Id; tiwc.UI_WindowControl_id = WindowControl.Id; tiwc.Text = frm.m_SelTable.Name; WindowControl.TableInWindowControlMgr.AddNew(tiwc); TableGridEl te = new TableGridEl(); te.WindowControl = WindowControl; te.CaptionText = sCtrlName; te.ShowTitleBar = true; te.ShowToolBar = true; te.Tag = WindowControl; panel.Controls.Add(te); te.Dock = DockStyle.Fill; te.BringToFront(); //联动表 ListViewItem itemLT = new ListViewItem(); itemLT.Text = te.CaptionText; itemLT.Tag = WindowControl; m_AttributeToolWindow.listLinkageWindowControl.Items.Add(itemLT); // //List<CBaseObject> lstColumn = table.ColumnMgr.GetList(); //foreach (CBaseObject obj in lstColumn) //{ // CColumn col = (CColumn)obj; // CColumnInWindowControl ciw = new CColumnInWindowControl(); // ciw.FW_Column_id = col.Id; // ciw.UI_TableInWindow_id = TableInWindow.Id; // if (!TableInWindow.ColumnInWindowMgr.AddNew(ciw)) // { // MessageBox.Show("设置显示字段失败!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); // //return false; // } // te.m_lstShowColumn.Add(ciw.FW_Column_id); //} //foreach (ToolStripItem tbutton in te.tableCtrlEl.toolStrip.Items) //{ // CToolbarButtonInWindowControl tbiw = new CToolbarButtonInWindowControl(); // tbiw.Title = tbutton.Text; // tbiw.UI_TableInWindow_id = TableInWindow.Id; // if (!TableInWindow.ToolbarButtonInWindowMgr.AddNew(tbiw)) // { // MessageBox.Show("设置工具栏按钮失败!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); // //return false; // } // te.m_lstShowToolBarButton.Add(tbiw.Title); //} te.tbTitle.MouseClick += new MouseEventHandler(childCtrl_MouseClick); SelectElement(te); } else if (item.Text.Equals("TreeCtrl", StringComparison.OrdinalIgnoreCase)) { TableTreeSet frm = new TableTreeSet(); if (frm.ShowDialog() != DialogResult.OK) { return; } string sCtrlName = GetDistinctName(frm.m_WindowControl.Name, Window.WindowControlMgr); CWindowControl WindowControl = frm.m_WindowControl; WindowControl.Name = sCtrlName; WindowControl.CtrlType = ControlType.TableTree; WindowControl.Ctx = Program.Ctx; WindowControl.Dock = (int)dock; WindowControl.UI_Window_id = Window.Id; Window.WindowControlMgr.AddNew(WindowControl); TableTreeEl tt = new TableTreeEl(); tt.CaptionText = sCtrlName; tt.ShowTitleBar = true; tt.Tag = WindowControl; panel.Controls.Add(tt); tt.Dock = DockStyle.Fill; tt.BringToFront(); tt.tbTitle.MouseClick += new MouseEventHandler(childCtrl_MouseClick); SelectElement(tt); } else if (item.Text.Equals("TabCtrl", StringComparison.OrdinalIgnoreCase)) { SelMultTableForm frm = new SelMultTableForm(); if (frm.ShowDialog() != DialogResult.OK) { return; } string sCtrlName = GetDistinctName("标签", Window.WindowControlMgr); CWindowControl WindowControl = new CWindowControl(); WindowControl.CtrlType = ControlType.TableTab; WindowControl.Ctx = Program.Ctx; WindowControl.Name = sCtrlName; WindowControl.Dock = (int)dock; WindowControl.UI_Window_id = Window.Id; Window.WindowControlMgr.AddNew(WindowControl); foreach (CTable table in frm.m_lstSelTable) { CTableInWindowControl tiwc = new CTableInWindowControl(); tiwc.Ctx = Program.Ctx; tiwc.FW_Table_id = table.Id; tiwc.UI_WindowControl_id = WindowControl.Id; tiwc.Text = table.Name; WindowControl.TableInWindowControlMgr.AddNew(tiwc); } TableTabEl tab = new TableTabEl(); tab.WindowControl = WindowControl; tab.CaptionText = sCtrlName; tab.ShowTitleBar = false; tab.Tag = WindowControl; panel.Controls.Add(tab); tab.Dock = DockStyle.Fill; tab.BringToFront(); tab.tabControl.MouseClick += new MouseEventHandler(childCtrl_MouseClick); SelectElement(tab); } else if (item.Text.Equals("ComboBox", StringComparison.OrdinalIgnoreCase)) { SelTableForm frm = new SelTableForm(); if (frm.ShowDialog() != DialogResult.OK) { return; } SelColumnForm frm2 = new SelColumnForm(); frm2.m_Table = frm.m_SelTable; if (frm2.ShowDialog() != DialogResult.OK) { return; } string sCtrlName = GetDistinctName(frm.m_SelTable.Name, Window.WindowControlMgr); CWindowControl WindowControl = new CWindowControl(); WindowControl.CtrlType = ControlType.ComboBox; WindowControl.Ctx = Program.Ctx; WindowControl.Name = sCtrlName; WindowControl.Dock = (int)dock; WindowControl.UI_Window_id = Window.Id; Window.WindowControlMgr.AddNew(WindowControl); string sText = string.Format("[{0}]", frm2.m_SelColumn.Code); CTableInWindowControl tiwc = new CTableInWindowControl(); tiwc.Ctx = Program.Ctx; tiwc.FW_Table_id = frm.m_SelTable.Id; tiwc.UI_WindowControl_id = WindowControl.Id; tiwc.Text = sText; WindowControl.TableInWindowControlMgr.AddNew(tiwc); UIComboBoxEl cb = new UIComboBoxEl(); cb.CaptionText = frm.m_SelTable.Name + ":"; cb.WindowControl = WindowControl; cb.Tag = WindowControl; panel.Controls.Add(cb); cb.Dock = DockStyle.Top; cb.BringToFront(); cb.lbTitle.MouseClick += new MouseEventHandler(childCtrl_MouseClick); cb.comboBox.MouseClick += new MouseEventHandler(childCtrl_MouseClick); SelectElement(cb); } else if (item.Text.Equals("ListBox", StringComparison.OrdinalIgnoreCase)) { SelTableForm frm = new SelTableForm(); if (frm.ShowDialog() != DialogResult.OK) { return; } SelColumnForm frm2 = new SelColumnForm(); frm2.m_Table = frm.m_SelTable; if (frm2.ShowDialog() != DialogResult.OK) { return; } string sCtrlName = GetDistinctName(frm.m_SelTable.Name, Window.WindowControlMgr); CWindowControl WindowControl = new CWindowControl(); WindowControl.CtrlType = ControlType.ListBox; WindowControl.Ctx = Program.Ctx; WindowControl.Name = sCtrlName; WindowControl.Dock = (int)dock; WindowControl.UI_Window_id = Window.Id; Window.WindowControlMgr.AddNew(WindowControl); string sText = string.Format("[{0}]", frm2.m_SelColumn.Code); //string sText = ""; //List<CBaseObject> lstObj = frm.m_SelTable.ColumnMgr.GetList(); //bool bHasName = false, bHasCode = false; //foreach (CBaseObject obj in lstObj) //{ // CColumn column = (CColumn)obj; // if (column.Code.Equals("name", StringComparison.OrdinalIgnoreCase)) // { // bHasName = true; // } // if (column.Code.Equals("code", StringComparison.OrdinalIgnoreCase)) // { // bHasCode = true; // } //} //if (bHasName) // sText = "[Name]"; //else if (bHasCode) // sText = "[Code]"; CTableInWindowControl tiwc = new CTableInWindowControl(); tiwc.Ctx = Program.Ctx; tiwc.FW_Table_id = frm.m_SelTable.Id; tiwc.UI_WindowControl_id = WindowControl.Id; tiwc.Text = sText; WindowControl.TableInWindowControlMgr.AddNew(tiwc); UIListBoxEl listBox = new UIListBoxEl(); listBox.CaptionText = sCtrlName; listBox.WindowControl = WindowControl; listBox.Tag = WindowControl; panel.Controls.Add(listBox); listBox.Dock = DockStyle.Fill; listBox.BringToFront(); listBox.tbTitle.MouseClick += new MouseEventHandler(childCtrl_MouseClick); SelectElement(listBox); } }
void LoadData() { //this.Controls.Clear(); m_AttributeToolWindow.listLinkageWindowControl.Items.Clear(); if (Window == null) { return; } this.Width = Window.Width; this.Height = Window.Height; panelTop.Height = Window.TopPanelHeight; panelBottom.Height = Window.BottomPanelHeight; panelLeft.Width = Window.LeftPanelWidth; panelRight.Width = Window.RightPanelWidth; panelTop.Visible = Window.TopPanelVisible; panelBottom.Visible = Window.BottomPanelVisible; panelLeft.Visible = Window.LeftPanelVisible; panelRight.Visible = Window.RightPanelVisible; List <CBaseObject> lstWindowControl = Window.WindowControlMgr.GetList(); foreach (CBaseObject obj in lstWindowControl) { CWindowControl WindowControl = (CWindowControl)obj; Panel panel = null; if (WindowControl.Dock == (int)DockStyle.Top) { panel = panelTop; } else if (WindowControl.Dock == (int)DockStyle.Bottom) { panel = panelBottom; } else if (WindowControl.Dock == (int)DockStyle.Left) { panel = panelLeft; } else if (WindowControl.Dock == (int)DockStyle.Right) { panel = panelRight; } else { panel = panelFill; } //联动控件 ListViewItem itemLT = new ListViewItem(); itemLT.Text = WindowControl.Name; itemLT.Tag = WindowControl; m_AttributeToolWindow.listLinkageWindowControl.Items.Add(itemLT); // if (WindowControl.CtrlType == ControlType.NavBar) { UIToolbarEl toolbar = new UIToolbarEl(); toolbar.WindowControl = WindowControl; toolbar.Tag = WindowControl; panel.Controls.Add(toolbar); toolbar.Dock = DockStyle.Fill; toolbar.MouseClick += new MouseEventHandler(ctrl_MouseClick); } else if (WindowControl.CtrlType == ControlType.TableGrid) { if (WindowControl.TableInWindowControlMgr.GetList().Count == 0) { continue; } CTableInWindowControl TableInWindowControl = (CTableInWindowControl)WindowControl.TableInWindowControlMgr.GetFirstObj(); CTable table = (CTable)Program.Ctx.TableMgr.Find(TableInWindowControl.FW_Table_id); if (table == null) { continue; } TableGridEl te = new TableGridEl(); te.WindowControl = WindowControl; te.Name = table.Code; te.TableInWindowControl = TableInWindowControl; te.ShowToolBar = TableInWindowControl.ShowToolBar; te.ShowTitleBar = TableInWindowControl.ShowTitleBar; te.CaptionText = WindowControl.Name; te.Tag = WindowControl; panel.Controls.Add(te); te.Dock = (DockStyle)WindowControl.Dock; te.BringToFront(); te.tbTitle.MouseClick += new MouseEventHandler(childCtrl_MouseClick); te.toolStrip.MouseClick += new MouseEventHandler(childCtrl_MouseClick); te.dataGridView.GotFocus += new EventHandler(ctrl_GotFocus); } else if (WindowControl.CtrlType == ControlType.TableTree) { TableTreeEl tt = new TableTreeEl(); tt.CaptionText = WindowControl.Name; tt.ShowTitleBar = WindowControl.ShowTitleBar; tt.WindowControl = WindowControl; tt.Tag = WindowControl; panel.Controls.Add(tt); tt.Dock = DockStyle.Fill; tt.BringToFront(); tt.tbTitle.MouseClick += new MouseEventHandler(childCtrl_MouseClick); tt.treeView.GotFocus += new EventHandler(ctrl_GotFocus); tt.treeView.ContextMenuStrip = contextMenuStrip1; } else if (WindowControl.CtrlType == ControlType.TableTab) { TableTabEl tab = new TableTabEl(); tab.WindowControl = WindowControl; tab.CaptionText = "TabCtrl"; tab.ShowTitleBar = WindowControl.ShowTitleBar; tab.Tag = WindowControl; panel.Controls.Add(tab); tab.Dock = DockStyle.Fill; tab.BringToFront(); tab.tabControl.MouseClick += new MouseEventHandler(childCtrl_MouseClick); } else if (WindowControl.CtrlType == ControlType.ComboBox) { UIComboBoxEl cb = new UIComboBoxEl(); cb.CaptionText = WindowControl.Name + ":"; cb.WindowControl = WindowControl; cb.ShowTitleBar = WindowControl.ShowTitleBar; cb.Tag = WindowControl; panel.Controls.Add(cb); cb.Dock = DockStyle.Top; cb.BringToFront(); cb.lbTitle.MouseClick += new MouseEventHandler(childCtrl_MouseClick); cb.comboBox.MouseClick += new MouseEventHandler(childCtrl_MouseClick); } else if (WindowControl.CtrlType == ControlType.ListBox) { UIListBoxEl listBox = new UIListBoxEl(); listBox.CaptionText = WindowControl.Name; listBox.WindowControl = WindowControl; listBox.ShowTitleBar = WindowControl.ShowTitleBar; listBox.Tag = WindowControl; panel.Controls.Add(listBox); listBox.Dock = DockStyle.Fill; listBox.BringToFront(); listBox.tbTitle.MouseClick += new MouseEventHandler(childCtrl_MouseClick); listBox.listBox.MouseClick += new MouseEventHandler(childCtrl_MouseClick); listBox.ContextMenuStrip = contextMenuStrip1; } } }
private void listColumn_ItemCheck(object sender, ItemCheckEventArgs e) { if (e.CurrentValue == e.NewValue) { return; } ListViewItem item = listColumn.Items[e.Index]; CWindowControl WindowControl = (CWindowControl)ControlEl.Tag; IDesignEl designEl = (IDesignEl)ControlEl; CColumn col = (CColumn)item.Tag; if (designEl.GetCtrlType() == ControlType.TableGrid) { TableGridEl te = (TableGridEl)ControlEl; CTableInWindowControl tiwc = (CTableInWindowControl)WindowControl.TableInWindowControlMgr.GetFirstObj(); List <CBaseObject> lstCIWC = tiwc.ColumnInTableInWindowControlMgr.GetList(); if (e.NewValue == CheckState.Checked) { bool bHas = false; foreach (CBaseObject obj in lstCIWC) { CColumnInTableInWindowControl ciwc = (CColumnInTableInWindowControl)obj; if (ciwc.FW_Column_id == col.Id) { bHas = true; break; } } if (!bHas) { CColumnInTableInWindowControl ciwc = new CColumnInTableInWindowControl(); ciwc.FW_Column_id = col.Id; ciwc.UI_TableInWindowControl_id = tiwc.Id; ciwc.Ctx = Program.Ctx; tiwc.ColumnInTableInWindowControlMgr.AddNew(ciwc); if (te.dataGridView.Columns[col.Code] == null) { te.dataGridView.Columns.Add(col.Code, col.Name); } } } else { foreach (CBaseObject obj in lstCIWC) { CColumnInTableInWindowControl ciwc = (CColumnInTableInWindowControl)obj; if (ciwc.FW_Column_id == col.Id) { tiwc.ColumnInTableInWindowControlMgr.Delete(ciwc); if (te.dataGridView.Columns[col.Code] != null) { te.dataGridView.Columns.Remove(col.Code); } break; } } } } else if (designEl.GetCtrlType() == ControlType.TableTab) { TableTabEl tab = (TableTabEl)ControlEl; TableGridEl te = tab.GetCurTableGridEl(); CTableInWindowControl tiwc = te.TableInWindowControl; List <CBaseObject> lstCIWC = tiwc.ColumnInTableInWindowControlMgr.GetList(); if (e.NewValue == CheckState.Checked) { bool bHas = false; foreach (CBaseObject obj in lstCIWC) { CColumnInTableInWindowControl ciwc = (CColumnInTableInWindowControl)obj; if (ciwc.FW_Column_id == col.Id) { bHas = true; break; } } if (!bHas) { CColumnInTableInWindowControl ciwc = new CColumnInTableInWindowControl(); ciwc.FW_Column_id = col.Id; ciwc.UI_TableInWindowControl_id = tiwc.Id; ciwc.Ctx = Program.Ctx; tiwc.ColumnInTableInWindowControlMgr.AddNew(ciwc); if (te.dataGridView.Columns[col.Code] == null) { te.dataGridView.Columns.Add(col.Code, col.Name); } } } else { foreach (CBaseObject obj in lstCIWC) { CColumnInTableInWindowControl ciwc = (CColumnInTableInWindowControl)obj; if (ciwc.FW_Column_id == col.Id) { tiwc.ColumnInTableInWindowControlMgr.Delete(ciwc); if (te.dataGridView.Columns[col.Code] != null) { te.dataGridView.Columns.Remove(col.Code); } break; } } } } }
private void btOk_Click(object sender, EventArgs e) { if (flowLayoutPanel.Controls.Count == 0) { MessageBox.Show("请添加表!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } for (int i = 0; i < flowLayoutPanel.Controls.Count; i++) { TableTreeNodeSet NodeSet = (TableTreeNodeSet)flowLayoutPanel.Controls[i]; if (NodeSet.m_Table == null) { MessageBox.Show("请设置表!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } if (NodeSet.txtText.Text.Trim() == "") { MessageBox.Show("请设置显示文本!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } if (NodeSet.ckIsLoop.Checked) { if (NodeSet.cbNodeIDCol.SelectedItem == null) { MessageBox.Show("请设置本节点字段!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } if (NodeSet.cbPNodeIDCol.SelectedItem == null) { MessageBox.Show("请设置父节点字段!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } } } if (m_WindowControl == null) { m_WindowControl = new CWindowControl(); m_WindowControl.Ctx = Program.Ctx; m_WindowControl.m_CmdType = CmdType.AddNew; m_WindowControl.Name = txtName.Text.Trim(); for (int i = 0; i < flowLayoutPanel.Controls.Count; i++) { TableTreeNodeSet NodeSet = (TableTreeNodeSet)flowLayoutPanel.Controls[i]; CTableInWindowControl TableInWindowControl = (CTableInWindowControl)NodeSet.Tag; TableInWindowControl.Idx = i; TableInWindowControl.FW_Table_id = NodeSet.m_Table.Id; TableInWindowControl.IsLoop = NodeSet.ckIsLoop.Checked; TableInWindowControl.QueryFilter = NodeSet.txtQueryFilter.Text.Trim(); TableInWindowControl.RootFilter = NodeSet.txtRootFilter.Text.Trim(); TableInWindowControl.Text = NodeSet.txtText.Text.Trim(); if (NodeSet.ckIsLoop.Checked) { DataItem item = (DataItem)NodeSet.cbNodeIDCol.SelectedItem; CColumn column = (CColumn)item.Data; TableInWindowControl.NodeIDCol = column.Id; DataItem item2 = (DataItem)NodeSet.cbPNodeIDCol.SelectedItem; CColumn column2 = (CColumn)item2.Data; TableInWindowControl.PNodeIDCol = column2.Id; } TableInWindowControl.UI_WindowControl_id = m_WindowControl.Id; m_WindowControl.TableInWindowControlMgr.AddNew(TableInWindowControl); } } else { //删除 List <CTableInWindowControl> lstDel = new List <CTableInWindowControl>(); List <CBaseObject> lstObj = m_WindowControl.TableInWindowControlMgr.GetList(); foreach (CBaseObject obj in lstObj) { CTableInWindowControl TableInWindowControl = (CTableInWindowControl)obj; bool bHas = false; for (int i = 0; i < flowLayoutPanel.Controls.Count; i++) { TableTreeNodeSet NodeSet = (TableTreeNodeSet)flowLayoutPanel.Controls[i]; CTableInWindowControl tiwc = (CTableInWindowControl)NodeSet.Tag; if (TableInWindowControl == tiwc) { bHas = true; break; } } if (!bHas) { lstDel.Add(TableInWindowControl); } } foreach (CTableInWindowControl tiwc in lstDel) { m_WindowControl.TableInWindowControlMgr.Delete(tiwc); } //添加、修改 for (int i = 0; i < flowLayoutPanel.Controls.Count; i++) { TableTreeNodeSet NodeSet = (TableTreeNodeSet)flowLayoutPanel.Controls[i]; CTableInWindowControl TableInWindowControl = (CTableInWindowControl)NodeSet.Tag; TableInWindowControl.Idx = i; TableInWindowControl.FW_Table_id = NodeSet.m_Table.Id; TableInWindowControl.IsLoop = NodeSet.ckIsLoop.Checked; TableInWindowControl.QueryFilter = NodeSet.txtQueryFilter.Text.Trim(); TableInWindowControl.RootFilter = NodeSet.txtRootFilter.Text.Trim(); TableInWindowControl.Text = NodeSet.txtText.Text.Trim(); if (NodeSet.ckIsLoop.Checked) { DataItem item = (DataItem)NodeSet.cbNodeIDCol.SelectedItem; CColumn column = (CColumn)item.Data; TableInWindowControl.NodeIDCol = column.Id; DataItem item2 = (DataItem)NodeSet.cbPNodeIDCol.SelectedItem; CColumn column2 = (CColumn)item2.Data; TableInWindowControl.PNodeIDCol = column2.Id; } TableInWindowControl.UI_WindowControl_id = m_WindowControl.Id; if (TableInWindowControl.m_CmdType == CmdType.AddNew) { m_WindowControl.TableInWindowControlMgr.AddNew(TableInWindowControl); } else { m_WindowControl.TableInWindowControlMgr.Update(TableInWindowControl); } } } this.DialogResult = DialogResult.OK; this.Close(); }
void LoadData() { if (Window == null) { return; } this.Width = Window.Width; this.Height = Window.Height; panelTop.Height = Window.TopPanelHeight; panelBottom.Height = Window.BottomPanelHeight; panelLeft.Width = Window.LeftPanelWidth; panelRight.Width = Window.RightPanelWidth; panelTop.Visible = Window.TopPanelVisible; panelBottom.Visible = Window.BottomPanelVisible; panelLeft.Visible = Window.LeftPanelVisible; panelRight.Visible = Window.RightPanelVisible; List <CBaseObject> lstWindowControl = Window.WindowControlMgr.GetList(); foreach (CBaseObject obj in lstWindowControl) { CWindowControl WindowControl = (CWindowControl)obj; Panel panel = null; if (WindowControl.Dock == (int)DockStyle.Top) { panel = panelTop; } else if (WindowControl.Dock == (int)DockStyle.Bottom) { panel = panelBottom; } else if (WindowControl.Dock == (int)DockStyle.Left) { panel = panelLeft; } else if (WindowControl.Dock == (int)DockStyle.Right) { panel = panelRight; } else { panel = panelFill; } if (WindowControl.CtrlType == ControlType.NavBar) { UIToolbar toolbar = new UIToolbar(); toolbar.WindowControl = WindowControl; toolbar.Name = WindowControl.Name; panel.Controls.Add(toolbar); toolbar.Dock = DockStyle.Fill; toolbar.SendToBack(); } else if (WindowControl.CtrlType == ControlType.TableGrid) { if (WindowControl.TableInWindowControlMgr.GetList().Count == 0) { continue; } CTableInWindowControl TableInWindowControl = (CTableInWindowControl)WindowControl.TableInWindowControlMgr.GetFirstObj(); CTable table = (CTable)Program.Ctx.TableMgr.Find(TableInWindowControl.FW_Table_id); if (table == null) { continue; } CBaseObjectMgr objMgr = new CBaseObjectMgr(); objMgr.TbCode = table.Code; objMgr.Ctx = Program.Ctx; TableGrid te = new TableGrid(); te.TableInWindowControl = TableInWindowControl; te.BaseObjectMgr = objMgr; te.Name = WindowControl.Name; te.ShowToolBar = TableInWindowControl.ShowToolBar; te.ShowTitleBar = TableInWindowControl.ShowTitleBar; te.CaptionText = WindowControl.Name; te.Tag = WindowControl; panel.Controls.Add(te); te.Dock = (DockStyle)WindowControl.Dock; te.BringToFront(); te.dataGridView.CellClick += new DataGridViewCellEventHandler(dataGridView_CellClick); } else if (WindowControl.CtrlType == ControlType.TableTree) { TableTree tt = new TableTree(); tt.CaptionText = WindowControl.Name; tt.ShowTitleBar = WindowControl.ShowTitleBar; tt.WindowControl = WindowControl; tt.Name = WindowControl.Name; tt.Tag = WindowControl; panel.Controls.Add(tt); tt.Dock = DockStyle.Fill; tt.BringToFront(); tt.treeView.NodeMouseClick += new TreeNodeMouseClickEventHandler(treeView_NodeMouseClick); } else if (WindowControl.CtrlType == ControlType.TableTab) { TableTab tab = new TableTab(); tab.WindowControl = WindowControl; tab.CaptionText = WindowControl.Name; tab.Name = WindowControl.Name; tab.ShowTitleBar = WindowControl.ShowTitleBar; tab.Tag = WindowControl; panel.Controls.Add(tab); tab.Dock = DockStyle.Fill; tab.BringToFront(); } else if (WindowControl.CtrlType == ControlType.ComboBox) { if (WindowControl.TableInWindowControlMgr.GetList().Count == 0) { continue; } CTableInWindowControl TableInWindowControl = (CTableInWindowControl)WindowControl.TableInWindowControlMgr.GetFirstObj(); CTable table = (CTable)Program.Ctx.TableMgr.Find(TableInWindowControl.FW_Table_id); if (table == null) { continue; } CBaseObjectMgr objMgr = new CBaseObjectMgr(); objMgr.TbCode = table.Code; objMgr.Ctx = Program.Ctx; UIComboBox cb = new UIComboBox(); cb.CaptionText = WindowControl.Name + ":"; cb.TableInWindowControl = TableInWindowControl; cb.BaseObjectMgr = objMgr; cb.Name = WindowControl.Name; cb.Tag = WindowControl; panel.Controls.Add(cb); cb.Dock = DockStyle.Top; cb.BringToFront(); cb.comboBox.SelectedIndexChanged += new EventHandler(comboBox_SelectedIndexChanged); } else if (WindowControl.CtrlType == ControlType.ListBox) { if (WindowControl.TableInWindowControlMgr.GetList().Count == 0) { continue; } CTableInWindowControl TableInWindowControl = (CTableInWindowControl)WindowControl.TableInWindowControlMgr.GetFirstObj(); CTable table = (CTable)Program.Ctx.TableMgr.Find(TableInWindowControl.FW_Table_id); if (table == null) { continue; } CBaseObjectMgr objMgr = new CBaseObjectMgr(); objMgr.TbCode = table.Code; objMgr.Ctx = Program.Ctx; UIListBox listBox = new UIListBox(); listBox.CaptionText = WindowControl.Name; listBox.TableInWindowControl = TableInWindowControl; listBox.BaseObjectMgr = objMgr; listBox.Name = WindowControl.Name; listBox.Tag = WindowControl; panel.Controls.Add(listBox); listBox.Dock = DockStyle.Fill; listBox.BringToFront(); listBox.listBox.SelectedIndexChanged += new EventHandler(listBox_SelectedIndexChanged); } } }
public void LoadData() { if (m_AttrType == AttrType.WindowControl) { if (ControlEl == null || ControlEl.Tag == null) { return; } } else { if (WindowEl == null || WindowEl.Window == null) { return; } } m_bIsLoading = true; UpdateTabCtrl(); UpdatePropertyGrid(); if (m_AttrType == AttrType.WindowControl) { IDesignEl designEl = (IDesignEl)ControlEl; CWindowControl WindowControl = (CWindowControl)ControlEl.Tag; if (designEl.GetCtrlType() == ControlType.NavBar) { } else if (designEl.GetCtrlType() == ControlType.TableGrid) { TableGridEl tableGridEl = (TableGridEl)ControlEl; CTableInWindowControl TableInWindowControl = (CTableInWindowControl)WindowControl.TableInWindowControlMgr.GetFirstObj(); CTable table = (CTable)Program.Ctx.TableMgr.Find(TableInWindowControl.FW_Table_id); if (table != null) { listColumn.Items.Clear(); List <CBaseObject> lstColumn = table.ColumnMgr.GetList(); foreach (CBaseObject obj in lstColumn) { CColumn col = (CColumn)obj; ListViewItem item = new ListViewItem(); item.Text = col.Name; item.Tag = col; listColumn.Items.Add(item); List <CBaseObject> lstCIWC = TableInWindowControl.ColumnInTableInWindowControlMgr.GetList(); bool bHas = false; foreach (CBaseObject obj2 in lstCIWC) { CColumnInTableInWindowControl ciwc = (CColumnInTableInWindowControl)obj2; if (ciwc.FW_Column_id == col.Id) { item.Checked = true; if (tableGridEl.dataGridView.Columns[col.Code] == null) { tableGridEl.dataGridView.Columns.Add(col.Code, col.Name); } bHas = true; break; } } if (!bHas) { if (tableGridEl.dataGridView.Columns[col.Code] != null) { tableGridEl.dataGridView.Columns.Remove(col.Code); } } } } List <CBaseObject> lstTButton = TableInWindowControl.TButtonInTableInWindowControlMgr.GetList(); listToolBarButton.Items.Clear(); foreach (ToolStripItem tbutton in tableGridEl.toolStrip.Items) { ListViewItem item = new ListViewItem(); item.Text = tbutton.Text; listToolBarButton.Items.Add(item); bool bHas = false; foreach (CBaseObject obj in lstTButton) { CTButtonInTableInWindowControl tbiwc = (CTButtonInTableInWindowControl)obj; if (tbiwc.Title.Equals(tbutton.Text, StringComparison.OrdinalIgnoreCase)) { item.Checked = true; bHas = true; break; } } if (!bHas) { tbutton.Visible = false; } } richTextFilter.Text = TableInWindowControl.QueryFilter; List <CBaseObject> lstLWC = WindowControl.LinkageWindowControlMgr.GetList(); for (int i = 0; i < listLinkageWindowControl.Items.Count; i++) { listLinkageWindowControl.Items[i].Checked = false; } foreach (ListViewItem item in listLinkageWindowControl.Items) { CWindowControl wc = (CWindowControl)item.Tag; foreach (CBaseObject obj in lstLWC) { CLinkageWindowControl lwc = (CLinkageWindowControl)obj; if (lwc.SlaveID == wc.Id) { item.Checked = true; break; } } } } else if (designEl.GetCtrlType() == ControlType.TableTree) { TableTreeEl treeEl = (TableTreeEl)ControlEl; List <CBaseObject> lstLWC = WindowControl.LinkageWindowControlMgr.GetList(); for (int i = 0; i < listLinkageWindowControl.Items.Count; i++) { listLinkageWindowControl.Items[i].Checked = false; } foreach (ListViewItem item in listLinkageWindowControl.Items) { CWindowControl wc = (CWindowControl)item.Tag; foreach (CBaseObject obj in lstLWC) { CLinkageWindowControl lwc = (CLinkageWindowControl)obj; if (lwc.SlaveID == wc.Id) { item.Checked = true; break; } } } } else if (designEl.GetCtrlType() == ControlType.ListBox) { CTableInWindowControl TableInWindowControl = (CTableInWindowControl)WindowControl.TableInWindowControlMgr.GetFirstObj(); richTextFilter.Text = TableInWindowControl.QueryFilter; List <CBaseObject> lstLWC = WindowControl.LinkageWindowControlMgr.GetList(); for (int i = 0; i < listLinkageWindowControl.Items.Count; i++) { listLinkageWindowControl.Items[i].Checked = false; } foreach (ListViewItem item in listLinkageWindowControl.Items) { CWindowControl wc = (CWindowControl)item.Tag; foreach (CBaseObject obj in lstLWC) { CLinkageWindowControl lwc = (CLinkageWindowControl)obj; if (lwc.SlaveID == wc.Id) { item.Checked = true; break; } } } } else if (designEl.GetCtrlType() == ControlType.ComboBox) { CTableInWindowControl TableInWindowControl = (CTableInWindowControl)WindowControl.TableInWindowControlMgr.GetFirstObj(); richTextFilter.Text = TableInWindowControl.QueryFilter; List <CBaseObject> lstLWC = WindowControl.LinkageWindowControlMgr.GetList(); for (int i = 0; i < listLinkageWindowControl.Items.Count; i++) { listLinkageWindowControl.Items[i].Checked = false; } foreach (ListViewItem item in listLinkageWindowControl.Items) { CWindowControl wc = (CWindowControl)item.Tag; foreach (CBaseObject obj in lstLWC) { CLinkageWindowControl lwc = (CLinkageWindowControl)obj; if (lwc.SlaveID == wc.Id) { item.Checked = true; break; } } } } else if (designEl.GetCtrlType() == ControlType.TableTab) { TableTabEl tab = (TableTabEl)ControlEl; TableGridEl tableGridEl = tab.GetCurTableGridEl(); CTableInWindowControl TableInWindowControl = tableGridEl.TableInWindowControl; CTable table = (CTable)Program.Ctx.TableMgr.Find(TableInWindowControl.FW_Table_id); if (table != null) { listColumn.Items.Clear(); List <CBaseObject> lstColumn = table.ColumnMgr.GetList(); foreach (CBaseObject obj in lstColumn) { CColumn col = (CColumn)obj; ListViewItem item = new ListViewItem(); item.Text = col.Name; item.Tag = col; listColumn.Items.Add(item); bool bHas = false; List <CBaseObject> lstCIWC = TableInWindowControl.ColumnInTableInWindowControlMgr.GetList(); foreach (CBaseObject obj2 in lstCIWC) { CColumnInTableInWindowControl ciwc = (CColumnInTableInWindowControl)obj2; if (ciwc.FW_Column_id == col.Id) { item.Checked = true; bHas = true; if (tableGridEl.dataGridView.Columns[col.Code] == null) { tableGridEl.dataGridView.Columns.Add(col.Code, col.Name); } break; } } if (!bHas) { if (tableGridEl.dataGridView.Columns[col.Code] != null) { tableGridEl.dataGridView.Columns.Remove(col.Code); } } } } List <CBaseObject> lstTButton = TableInWindowControl.TButtonInTableInWindowControlMgr.GetList(); listToolBarButton.Items.Clear(); foreach (ToolStripItem tbutton in tableGridEl.toolStrip.Items) { ListViewItem item = new ListViewItem(); item.Text = tbutton.Text; listToolBarButton.Items.Add(item); bool bHas = false; foreach (CBaseObject obj in lstTButton) { CTButtonInTableInWindowControl tbiwc = (CTButtonInTableInWindowControl)obj; if (tbiwc.Title.Equals(tbutton.Text, StringComparison.OrdinalIgnoreCase)) { item.Checked = true; bHas = true; break; } } if (!bHas) { tbutton.Visible = false; } } richTextFilter.Text = TableInWindowControl.QueryFilter; List <CBaseObject> lstLWC = WindowControl.LinkageWindowControlMgr.GetList(); for (int i = 0; i < listLinkageWindowControl.Items.Count; i++) { listLinkageWindowControl.Items[i].Checked = false; } foreach (ListViewItem item in listLinkageWindowControl.Items) { CWindowControl wc = (CWindowControl)item.Tag; foreach (CBaseObject obj in lstLWC) { CLinkageWindowControl lwc = (CLinkageWindowControl)obj; if (lwc.SlaveID == wc.Id) { item.Checked = true; break; } } } } } else { } m_bIsLoading = false; }
void RefreshLinkageWindowControl(CWindowControl WindowControl) { List <Control> lstCtrls = new List <Control>(); foreach (Control ctrl in panelTop.Controls) { lstCtrls.Add(ctrl); } foreach (Control ctrl in panelBottom.Controls) { lstCtrls.Add(ctrl); } foreach (Control ctrl in panelLeft.Controls) { lstCtrls.Add(ctrl); } foreach (Control ctrl in panelRight.Controls) { lstCtrls.Add(ctrl); } foreach (Control ctrl in panelFill.Controls) { lstCtrls.Add(ctrl); } List <CBaseObject> lstLT = WindowControl.LinkageWindowControlMgr.GetList(); foreach (CBaseObject obj in lstLT) { CLinkageWindowControl LinkageWindowControl = (CLinkageWindowControl)obj; CWindowControl swc = (CWindowControl)WindowControl.m_ObjectMgr.Find(LinkageWindowControl.SlaveID); if (swc != null) { foreach (Control ctrl in lstCtrls) { if ((CWindowControl)(ctrl.Tag) == swc) { IWindowCtrl winCtrl = (IWindowCtrl)ctrl; if (winCtrl.GetCtrlType() == ControlType.TableGrid) { TableGrid teLT = (TableGrid)ctrl; CTableInWindowControl tiw = teLT.TableInWindowControl; string sQueryFilter = tiw.QueryFilter; if (CalcUIFormula(ref sQueryFilter)) { teLT.BaseObjectMgr.GetList(sQueryFilter); teLT.LoadData(); } } else if (winCtrl.GetCtrlType() == ControlType.TableTab) { TableTab tabLT = (TableTab)ctrl; foreach (TabPage page in tabLT.tabControl.TabPages) { TableGrid teLT = (TableGrid)page.Controls[0]; CTableInWindowControl tiw = teLT.TableInWindowControl; string sQueryFilter = tiw.QueryFilter; if (CalcUIFormula(ref sQueryFilter)) { teLT.BaseObjectMgr.GetList(sQueryFilter); teLT.LoadData(); } } } else if (winCtrl.GetCtrlType() == ControlType.ListBox) { UIListBox listBoxLT = (UIListBox)ctrl; CTableInWindowControl tiw = listBoxLT.TableInWindowControl; string sQueryFilter = tiw.QueryFilter; if (CalcUIFormula(ref sQueryFilter)) { listBoxLT.BaseObjectMgr.GetList(sQueryFilter); listBoxLT.LoadData(); } } else if (winCtrl.GetCtrlType() == ControlType.ComboBox) { UIComboBox combBoxLT = (UIComboBox)ctrl; CTableInWindowControl tiw = combBoxLT.TableInWindowControl; string sQueryFilter = tiw.QueryFilter; if (CalcUIFormula(ref sQueryFilter)) { combBoxLT.BaseObjectMgr.GetList(sQueryFilter); combBoxLT.LoadData(); } } } } } } }
private void listToolBarButton_ItemCheck(object sender, ItemCheckEventArgs e) { if (e.CurrentValue == e.NewValue) { return; } CWindowControl WindowControl = (CWindowControl)ControlEl.Tag; IDesignEl designEl = (IDesignEl)ControlEl; if (designEl.GetCtrlType() == ControlType.TableGrid) { TableGridEl te = (TableGridEl)ControlEl; CTableInWindowControl tiwc = (CTableInWindowControl)WindowControl.TableInWindowControlMgr.GetFirstObj(); List <CBaseObject> lstTBIWC = tiwc.TButtonInTableInWindowControlMgr.GetList(); if (e.NewValue == CheckState.Checked) { bool bHas = false; foreach (CBaseObject obj in lstTBIWC) { CTButtonInTableInWindowControl tbiwc = (CTButtonInTableInWindowControl)obj; if (tbiwc.Title.Equals(listToolBarButton.Items[e.Index].Text, StringComparison.OrdinalIgnoreCase)) { bHas = true; break; } } if (!bHas) { CTButtonInTableInWindowControl tbiwc = new CTButtonInTableInWindowControl(); tbiwc.Title = listToolBarButton.Items[e.Index].Text; tbiwc.UI_TableInWindowControl_id = tiwc.Id; tbiwc.Ctx = Program.Ctx; tiwc.TButtonInTableInWindowControlMgr.AddNew(tbiwc); te.SetToolBarButtonVisible(listToolBarButton.Items[e.Index].Text, true); } } else { foreach (CBaseObject obj in lstTBIWC) { CTButtonInTableInWindowControl tbiwc = (CTButtonInTableInWindowControl)obj; if (tbiwc.Title.Equals(listToolBarButton.Items[e.Index].Text, StringComparison.OrdinalIgnoreCase)) { tiwc.TButtonInTableInWindowControlMgr.Delete(tbiwc); te.SetToolBarButtonVisible(listToolBarButton.Items[e.Index].Text, false); break; } } } } else if (designEl.GetCtrlType() == ControlType.TableTree) { TableTreeEl treeEl = (TableTreeEl)ControlEl; } else if (designEl.GetCtrlType() == ControlType.TableTab) { TableTabEl tab = (TableTabEl)ControlEl; TableGridEl te = tab.GetCurTableGridEl(); CTableInWindowControl tiwc = te.TableInWindowControl; List <CBaseObject> lstTBIWC = tiwc.TButtonInTableInWindowControlMgr.GetList(); if (e.NewValue == CheckState.Checked) { bool bHas = false; foreach (CBaseObject obj in lstTBIWC) { CTButtonInTableInWindowControl tbiwc = (CTButtonInTableInWindowControl)obj; if (tbiwc.Title.Equals(listToolBarButton.Items[e.Index].Text, StringComparison.OrdinalIgnoreCase)) { bHas = true; break; } } if (!bHas) { CTButtonInTableInWindowControl tbiwc = new CTButtonInTableInWindowControl(); tbiwc.Title = listToolBarButton.Items[e.Index].Text; tbiwc.UI_TableInWindowControl_id = tiwc.Id; tbiwc.Ctx = Program.Ctx; tiwc.TButtonInTableInWindowControlMgr.AddNew(tbiwc); te.SetToolBarButtonVisible(listToolBarButton.Items[e.Index].Text, true); } } else { foreach (CBaseObject obj in lstTBIWC) { CTButtonInTableInWindowControl tbiwc = (CTButtonInTableInWindowControl)obj; if (tbiwc.Title.Equals(listToolBarButton.Items[e.Index].Text, StringComparison.OrdinalIgnoreCase)) { tiwc.TButtonInTableInWindowControlMgr.Delete(tbiwc); te.SetToolBarButtonVisible(listToolBarButton.Items[e.Index].Text, false); break; } } } } }