分组类控件主要包括容器控件(panel),分组框控件(groupbox)和选项卡控件(tabcontrol)等控件。
一、panel控件
panel控件是由system.windows.forms.panel类提供的,主要作用就是将其他控件组合一起放在一个面板上,使这些控件更容易管理。当panel控件面板上要显示过多的控件时,可设置autoscroll属性为true。
panel控件在默认情况下不显示边框,如把borderstyle属性设置为不是none的其他值,就可以使用面板可视化地组合相关的控件。
实例:演示panel控件的borderstyle属性和autoscroll属性
(1)在窗体中添加一个panel控件,设置autoscroll属性为true,设置borderstyle属性为fixed3d,添加一个button控件和一个listbox控件,设置button控件的text属性为“增加”。
(2)双击button控件生成click事件,在click事件中完成向listbox控件添加一个项目并且使其高度增加20,代码为:
1
2
3
4
5
|
<span style= "font-size:18px;" > private void button1_click( object sender, eventargs e) { listbox1.items.add( "子项" ); //增加子项 listbox1.height = listbox1.height + 20; //增加高度 }</span> |
完整的窗体代码为:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
<span style= "font-size:18px;" > using system; using system.collections.generic; using system.componentmodel; using system.data; using system.drawing; using system.linq; using system.text; using system.threading.tasks; using system.windows.forms; namespace windowsformsapplication3 { public partial class form1 : form { public form1() { initializecomponent(); } private void button1_click( object sender, eventargs e) { listbox1.items.add( "子项" ); //增加子项 listbox1.height = listbox1.height + 20; //增加高度 } } } </span> |
运行窗体然后多次点击增加按钮的结果为:
二、groupbox控件
groupbox控件是由system.windows.forms.groupbox类提供的,主要作用是为其他控件提供可识别的分组,通常,使用分组框按功能细分窗体。
实例:演示groupbox控件的使用
在窗体上添加两个groupbox控件gpbsystem和gpbclass,设置gpbsystem控件的text属性为系别,并放置两个radiobutton控件,分别设置它们的text属性为“计算机”和“外语系”。同样设置gpbclass的text属性为班级,并放置两个radiobutton控件,分别设置它们的text属性为“一班”和“二班”。
运行窗体的结果为:
三、tabcontrol控件
tabcontrol控件是由system.windows.forms.tabcontrol类提供的,作用就是将相关的组件组合到一系列选项卡页面上。tabcontrol控件管理tabpages集合,tabcontrol控件的multiline属性用来设置是否显示多行选项卡选。如果multiline属性设置为false,而有多个选项卡不能一次显示出来,就提供组箭头查看剩余的选项卡。tabcontrol控件的appearance属性是指示选项卡是挥之成按钮还是绘制成常规选项卡,该属性有三个值分别是normal(绘制成常规选项),buttons(绘制成常规按钮)和flatbutton(绘制成平滑按钮)。
把光标放在tabcontrol控件上点击,可通过【增加选项卡】或选择【移除选项卡】命令来添加和删除tabpages集合,也可通过tabcontrol控件tabpages属性来添加和删除tabpages集合,tabpages的text属性是用来设置选项卡上显示的内容。而selectedtab属性可以确定当前的选项卡。每次选择新选项卡时,救护触发selectedindexchanged事件,通过selectedindex属性和selectedtab属性确认当前选择,就可以根据选项卡进行待定的处理。
实例:演示tabcontrol控件的使用
(1)在窗体上添加一个tabcontrol控件并右击,选择【增加选项卡】命令,添加一个选项卡tabpage1,重复操作再添加个tabpage2,在tabpage1中提添加一个button控件,更改tabpage1的text属性为“选项一”,在tabpage2中添加一个textbox控件,更改tabpage2的text属性为“选项二”。
(2)选择tabcontrol控件,在事件中找到selectedindexchanged事件,双击后面的空格,生成selectedindexchanged事件,通过messagebox的show方法显示tabcontrol控件所选项的tabpages的标题和索引,代码为:
1
2
3
4
5
6
|
<span style= "font-size:18px;" > private void tabcontrol1_selectedindexchanged( object sender, eventargs e) { messagebox.show( "你单击了" +tabcontrol1.selectedtab.text //取消单击的选项卡标题 + "它的索引是" +tabcontrol1.selectedindex.tostring()); //取消单击的选项卡索引 }</span> |
完整的窗体代码为:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
<span style= "font-size:18px;" > using system; using system.collections.generic; using system.componentmodel; using system.data; using system.drawing; using system.linq; using system.text; using system.threading.tasks; using system.windows.forms; namespace windowsformsapplication5 { public partial class form1 : form { public form1() { initializecomponent(); } private void tabcontrol1_selectedindexchanged( object sender, eventargs e) { messagebox.show( "你单击了" +tabcontrol1.selectedtab.text //取消单击的选项卡标题 + "它的索引是" +tabcontrol1.selectedindex.tostring()); //取消单击的选项卡索引 } } } </span> |
依次单击选项卡的运行结果为:
以上就是本文的全部内容,希望对大家的学习有所帮助。