public void OpenFile(OpenFileDialog openFileDialog, TabControl tabControl) { Stream stream = null; if (openFileDialog.ShowDialog() == DialogResult.OK) { if ((stream = openFileDialog.OpenFile()) != null) { StreamReader reader = new StreamReader(stream); string pageName; while ((pageName = reader.ReadLine()) != null) { TabPage newPage = new TabPage(pageName); newPage.Name = pageName; newPage.Controls.Add(CreateGridByFile(pageName)); newPage.Controls.Add(SetAddButton()); newPage.Controls.Add(SetDeleteButton()); tabControl.TabPages.Add(newPage); tabControl.Refresh(); } reader.Close(); } } }
public static void tabProc_MouseDown(int SelectedProcTab,ODGrid gridProg,TabControl tabProc,Size ClientSize,MouseEventArgs e) { if(Programs.UsingOrion) { return;//tabs never minimize } //selected tab will have changed, so we need to test the original selected tab: Rectangle rect=tabProc.GetTabRect(SelectedProcTab); if(rect.Contains(e.X,e.Y) && tabProc.Height>27) {//clicked on the already selected tab which was maximized tabProc.Height=27; tabProc.Refresh(); gridProg.Location=new Point(tabProc.Left,tabProc.Bottom+1); gridProg.Height=ClientSize.Height-gridProg.Location.Y-2; } else if(tabProc.Height==27) {//clicked on a minimized tab tabProc.Height=259; tabProc.Refresh(); gridProg.Location=new Point(tabProc.Left,tabProc.Bottom+1); gridProg.Height=ClientSize.Height-gridProg.Location.Y-2; } else {//clicked on a new tab //height will have already been set, so do nothing } SelectedProcTab=tabProc.SelectedIndex; }
private void swapTabPages(TabControl tc, TabPage src, TabPage dst) { int index_src = tc.TabPages.IndexOf(src); int index_dst = tc.TabPages.IndexOf(dst); if (!(tc == this.getSelectedTabControlStages() && (index_src == 0 || index_dst == 0))) { tc.TabPages[index_dst] = src; tc.TabPages[index_src] = dst; tc.Refresh(); } }
private void swapTabPages(TabControl tc, TabPage src, TabPage dst) { int index_src = tc.TabPages.IndexOf(src); int index_dst = tc.TabPages.IndexOf(dst); tc.TabPages[index_dst] = src; tc.TabPages[index_src] = dst; tc.Refresh(); }
////////////////////////////// //// USEMNEMONIC PROPERTY //// ////////////////////////////// /// <summary> /// Enables/Disables a Tab. /// </summary> /// <param name="TabCtrl">The TabCtrl to be enabled.</param> /// <param name="index">The TabControl index.</param> /// <param name="value">Indicates if enable/disable TabControl.</param> public static void SetTabEnabled(TabControl TabCtrl, int index, bool value) { IList<int> lstDisabled; if (TabsDisabled.ContainsKey(TabCtrl.GetHashCode())) lstDisabled = TabsDisabled[TabCtrl.GetHashCode()]; else { lstDisabled = new List<int>(); TabsDisabled.Add(TabCtrl.GetHashCode(), lstDisabled); TabCtrl.Selecting += TabControl_Selecting; SetCustomDrawingMode(TabCtrl, newPropertiesEnum.TabEnabled, true); TabCtrl.EnabledChanged += TabCtrl_EnabledChanged; } //Tab is being enabled so it must be eliminated from the list if ((value) && (lstDisabled.Contains(index))) lstDisabled.Remove(index); //Tab is being disabled so it must be added if necessary if ((!value) && (!lstDisabled.Contains(index))) { lstDisabled.Add(index); GetTabControlPages(TabCtrl)[index].ForeColor = Color.Green; } TabsDisabled[TabCtrl.GetHashCode()] = lstDisabled; TabCtrl.Refresh(); }