學(xué)習(xí)Winform分組類控件(Panel、groupBox、TabControl)
分組類控件主要包括容器控件(Panel),分組框控件(groupBox)和選項卡控件(TabControl)等控件。
一、Panel控件
Panel控件是由System.Windows.Forms.Panel類提供的,主要作用就是將其他控件組合一起放在一個面板上,使這些控件更容易管理。當(dāng)Panel控件面板上要顯示過多的控件時,可設(shè)置AutoScroll屬性為true。
Panel控件在默認(rèn)情況下不顯示邊框,如把BorderStyle屬性設(shè)置為不是none的其他值,就可以使用面板可視化地組合相關(guān)的控件。
實例:演示Panel控件的BorderStyle屬性和AutoScroll屬性
(1)在窗體中添加一個Panel控件,設(shè)置AutoScroll屬性為true,設(shè)置BorderStyle屬性為Fixed3D,添加一個Button控件和一個ListBox控件,設(shè)置Button控件的Text屬性為“增加”。
(2)雙擊Button控件生成Click事件,在Click事件中完成向ListBox控件添加一個項目并且使其高度增加20,代碼為:
<span style="font-size:18px;"> private void button1_Click(object sender, EventArgs e)
{
listBox1.Items.Add("子項");//增加子項
listBox1.Height = listBox1.Height + 20;//增加高度
}</span>
完整的窗體代碼為:
<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>
運行窗體然后多次點擊增加按鈕的結(jié)果為:

二、GroupBox控件
GroupBox控件是由System.Windows.Forms.GroupBox類提供的,主要作用是為其他控件提供可識別的分組,通常,使用分組框按功能細(xì)分窗體。
實例:演示GroupBox控件的使用
在窗體上添加兩個GroupBox控件gpbSystem和gpbClass,設(shè)置gpbSystem控件的Text屬性為系別,并放置兩個RadioButton控件,分別設(shè)置它們的Text屬性為“計算機”和“外語系”。同樣設(shè)置gpbClass的Text屬性為班級,并放置兩個RadioButton控件,分別設(shè)置它們的Text屬性為“一班”和“二班”。
運行窗體的結(jié)果為:

三、TabControl控件
TabControl控件是由System.Windows.Forms.TabControl類提供的,作用就是將相關(guān)的組件組合到一系列選項卡頁面上。TabControl控件管理TabPages集合,TabControl控件的MultiLine屬性用來設(shè)置是否顯示多行選項卡選。如果Multiline屬性設(shè)置為false,而有多個選項卡不能一次顯示出來,就提供組箭頭查看剩余的選項卡。TabControl控件的Appearance屬性是指示選項卡是揮之成按鈕還是繪制成常規(guī)選項卡,該屬性有三個值分別是Normal(繪制成常規(guī)選項),Buttons(繪制成常規(guī)按鈕)和FlatButton(繪制成平滑按鈕)。
把光標(biāo)放在TabControl控件上點擊,可通過【增加選項卡】或選擇【移除選項卡】命令來添加和刪除TabPages集合,也可通過TabControl控件TabPages屬性來添加和刪除TabPages集合,TabPages的Text屬性是用來設(shè)置選項卡上顯示的內(nèi)容。而SelectedTab屬性可以確定當(dāng)前的選項卡。每次選擇新選項卡時,救護觸發(fā)SelectedIndexChanged事件,通過SelectedIndex屬性和SelectedTab屬性確認(rèn)當(dāng)前選擇,就可以根據(jù)選項卡進行待定的處理。
實例:演示TabControl控件的使用
(1)在窗體上添加一個TabControl控件并右擊,選擇【增加選項卡】命令,添加一個選項卡TabPage1,重復(fù)操作再添加個TabPage2,在TabPage1中提添加一個Button控件,更改TabPage1的Text屬性為“選項一”,在TabPage2中添加一個TextBox控件,更改TabPage2的Text屬性為“選項二”。
(2)選擇TabControl控件,在事件中找到SelectedindexChanged事件,雙擊后面的空格,生成SelectedIndexChanged事件,通過MessageBox的Show方法顯示TabControl控件所選項的TabPages的標(biāo)題和索引,代碼為:
<span style="font-size:18px;"> private void tabControl1_SelectedIndexChanged(object sender, EventArgs e)
{
MessageBox.Show("你單擊了"+tabControl1.SelectedTab.Text
//取消單擊的選項卡標(biāo)題
+"它的索引是"+tabControl1.SelectedIndex.ToString());//取消單擊的選項卡索引
}</span>
完整的窗體代碼為:
<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
//取消單擊的選項卡標(biāo)題
+"它的索引是"+tabControl1.SelectedIndex.ToString());//取消單擊的選項卡索引
}
}
}
</span>
依次單擊選項卡的運行結(jié)果為:


以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助。
相關(guān)文章
C#記一次http協(xié)議multipart/form-data的boundary問題
這篇文章主要介紹了C#記一次http協(xié)議multipart/form-data的boundary問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-06-06
c#利用webmail郵件系統(tǒng)發(fā)送郵件示例分享
在C#中發(fā)送郵件的方式有2種,一種是使用webmail方式進行發(fā)送,另外一種就是采用netmail發(fā)送的方式,這篇文章介紹了c#使用webmail方式發(fā)送郵件示例,大家參考使用吧2014-01-01

