private void showPageCore(basePage page) { if (tvwContentNodes.SelectedNode != null && (tvwContentNodes.SelectedNode.Tag as Type) != page.GetType() && !_session.derivesFrom <baseSubPage>(page.GetType())) { foreach (TreeNode node in tvwContentNodes.Nodes) { if ((node.Tag as Type) == page.GetType()) { tvwContentNodes.SelectedNode = node; return; } } tvwContentNodes.SelectedNode = null; } //Clear View pnlContentView.Controls.Clear(); //Load ToolStripButtons from this Page if (!page.toolStripButtonsInitialized) { page.initializeToolStripButtons(); page.toolStripButtonsInitialized = true; } //Remove old ones int seperatorIndex = tosMain.Items.IndexOf(sepPageControls) + 1; for (int i = tosMain.Items.Count - 1; i >= 0; i--) { if (tosMain.Items[i].Tag != null) { tosMain.Items.RemoveAt(i); } } //add new ones sepPageControls.Visible = page.extendsToolStrip; if (page.extendsToolStrip && page.toolStripButtons.Count > 0) { for (int i = page.toolStripButtons.Count - 1; i >= 0; i--) { tosMain.Items.Insert(seperatorIndex, page.toolStripButtons[i]); } } //Initialize and Localize Node page.initializeData(); page.initializeLocalization(); pnlContentView.Controls.Add(page); page.Dock = DockStyle.Fill; }
private void showPageCore(basePage page) { if (tvwContentNodes.SelectedNode != null && (tvwContentNodes.SelectedNode.Tag as Type) != page.GetType() && !_session.derivesFrom<baseSubPage>(page.GetType())) { foreach (TreeNode node in tvwContentNodes.Nodes) if ((node.Tag as Type) == page.GetType()) { tvwContentNodes.SelectedNode = node; return; } tvwContentNodes.SelectedNode = null; } //ContentView leeren pnlContentView.Controls.Clear(); //ToolStripButtons die von dieser Seite angeboten werden sind laden //Aber vorher die alten Entfernen int seperatorIndex = tosMain.Items.IndexOf(sepPageControls)+1; for (int i = tosMain.Items.Count - 1; i >=0 ; i--) { if (tosMain.Items[i].Tag != null) tosMain.Items.RemoveAt(i); } //Neue hinzufügen sepPageControls.Visible = page.extendsToolStrip; if (page.extendsToolStrip && page.toolStripButtons.Count > 0) { for (int i = page.toolStripButtons.Count - 1; i >= 0; i--) { tosMain.Items.Insert(seperatorIndex, page.toolStripButtons[i]); } } //Knoten initialisieren und der View hinzufügen _session.localizeControl(page); page.initializeData(); pnlContentView.Controls.Add(page); page.Dock = DockStyle.Fill; }