public static void Add_TabPage(string str, BaseUserControl myForm) //将标题添加进tabpage中
 {
     if (!tabControlCheckHave(Program.TabcMain, str))
     {
         MyXtraTabPage page = new MyXtraTabPage();
         myForm.BorderStyle = BorderStyle.None;
         myForm.Parent      = Program.TabcMain.SelectedTabPage;
         myForm.Dock        = DockStyle.Fill;
         page.Text          = str;
         page.Controls.Add(myForm);
         Program.TabcMain.TabPages.Add(page);
         Program.TabcMain.SelectedTabPageIndex = ValueConvert.ToInt32(Program.TabcMain.TabPages.Count - 1);
     }
 }
Example #2
0
 protected override void WndProc(ref Message m)
 {
     if (m.Msg == WM_SYSCOMMAND)
     {
         if (m.WParam.ToInt64() == SC_MAXIMIZE)//最大化
         {
             //自定义的tab页面
             NoHeaderXtraTabControl.MyXtraTabPage page = new MyXtraTabPage();
             page.Tag  = this.Tag;
             page.Text = this.Text;
             page.Controls.Add(this.Controls[0]);
             this.tabc_Main.TabPages.Add(page);//最大化后,显示在tab控件内
             this.tabc_Main.SelectedTabPage = page;
             isRemove = false;
             this.RefreshHistoryTreeList();//刷新工作列表
             this.Close();
         }
         else if (m.WParam.ToInt64() == SC_MINIMIZE)//最小化
         {
             if (this.Tag != null && !Program.HtMinimizeForm.Contains(this.Tag))
             {
                 Program.HtMinimizeForm.Add(this.Tag.ToString(), this);//保存最小化窗体
             }
         }
         else if (m.WParam.ToInt64() == SC_CLOSE) //关闭
         {
             if (this.Tag != null)                //guid
             {
                 //移除工作列表节点
                 var node = Program.ArrHistoryNode.Find(n => n.guid == this.Tag.ToString() && n.Array == 3);
                 if (node != null)
                 {
                     if (!node.formIsSaved && MsgBox.ShowYesNo("确定取消编辑,退出吗?") != DialogResult.Yes)
                     {
                         return;
                     }
                     if (node.formRecordID != -1)
                     {
                         FormPageOperation.ClearUserTempData(node.guid, node.formName, node.formRecordID);//清除临时表数据
                     }
                 }
             }
         }
     }
     base.WndProc(ref m);
 }