學習Winform分組類控件(Panel、groupBox、TabControl)
分組類控件主要包括容器控件(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,代碼為:
<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>
運行窗體然后多次點擊增加按鈕的結果為:

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


以上就是本文的全部內容,希望對大家的學習有所幫助。
相關文章
C#實現(xiàn)網絡通信共享庫NetShare的使用示例
本文主要介紹了C#實現(xiàn)網絡通信共享庫NetShare,網絡通信共享庫NetShare用于保證客戶端與服務器通信數據包的規(guī)范和統(tǒng)一,感興趣的可以了解一下2023-11-11
C#實現(xiàn)Stream與byte[]之間的轉換實例教程
這篇文章主要介紹了C#實現(xiàn)Stream與byte[]之間的轉換方法,具體講解了二進制轉換成圖片、byte[]與string的轉換、Stream 和 byte[] 之間的轉換、Stream 和 文件之間的轉換、從文件讀取 Stream以及Bitmap 轉化為 Byte[]等,需要的朋友可以參考下2014-09-09
c# 基于GMap.NET實現(xiàn)電子圍欄功能(WPF版)
這篇文章主要介紹了c# 基于GMap.NET實現(xiàn)電子圍欄功能(WPF版),幫助大家更好的理解和學習使用c#,感興趣的朋友可以了解下2021-03-03

