看下效果吧
<ignore_js_op>
下面是一个公共的添加方法
看代码
[C#] 纯文本查看 复制代码
|
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
/// <summary> /// 添加一个选项卡 /// </summary> /// <param name="MainTabControlKey">选项卡的键值</param> /// <param name="MainTabControlName">选项卡要显示的名称</param> /// <param name="objTabControl">要添加到的TabControl对象</param> /// <param name="objfrm">要被添加到选项卡的用户控件对象</param> private void addTabControl(string MainTabControlKey, string MainTabControlName, TabControl objTabControl, UserControl objfrm) { try { if (ErgodicModiForm(MainTabControlKey, MainTabControl)) { //声明一个选项卡对象 TabPage tabPage = new TabPage(); //选项卡的名称 tabPage.Name = MainTabControlKey; //选项卡的文本 tabPage.Text = MainTabControlName; //向选项卡集合添加新选项卡 MainTabControl.Controls.Add(tabPage); //子窗体显示 objfrm.Show(); //子窗体大小设置为选项卡大小 objfrm.Size = tabPage.Size; //将子窗体添加到选项卡中 tabPage.Controls.Add(objfrm); //设置当前选项卡为新增选项卡 MainTabControl.SelectedTab.Name = MainTabControlKey; } else { //设为当前选中的选项 MainTabControl.SelectTab(MainTabControlKey); } } catch (Exception) { showMessages objshowMesages = new showMessages(); objshowMesages.ShowDialog("提示信息", "添加选项卡时出错,请检查是否正确连接数据"); } } |
下面的验证方法ErgodicModiForm
[C#] 纯文本查看 复制代码
|
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
|
/// </summary> /// <param name="MainTabControlKey">选项卡的键值</param> /// <param name="objTabControl">要添加到的TabControl对象</param> /// <returns></returns> private Boolean ErgodicModiForm(string MainTabControlKey, TabControl objTabControl) { //遍历选项卡判断是否存在该子窗体 foreach (Control con in objTabControl.Controls) { TabPage tab = (TabPage)con; if (tab.Name == MainTabControlKey) { return false;//存在 } } return true;//不存在 } |
下面的调用添加
[C#] 纯文本查看 复制代码
|
01
02
03
04
05
06
07
08
09
10
11
12
|
try { //声部门控件对象 UserDepartments objfrm = new UserDepartments(); //调用添加选项卡的方法 addTabControl("Departments", "部门信息", MainTabControl, objfrm); } catch (Exception) { showMessages objshowMesages = new showMessages(); objshowMesages.ShowDialog("提示信息", "添加选项卡时出错,请检查是否正确连接数据"); } |
这样就可以动态的添加了, 还可以删除
try { MainTabControl.TabPages.Remove(MainTabControl.SelectedTab); } catch { showMessages objshowMesages = new showMessages(); objshowMesages.ShowDialog("提示信息", "已没有项目可删!"); }
http://www.sufeinet.com/thread-66-1-1.html