国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹

這篇具有很好參考價(jià)值的文章主要介紹了Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

1、窗體Form

窗口就是打開程序我們所面對的一個(gè)面板,里面可以添加各種控件,如下圖所示,我們可以在屬性欄設(shè)置其標(biāo)題名稱、圖標(biāo)、大小等。
Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹
Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹
Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹

雙擊標(biāo)題框,會(huì)生成Load函數(shù),也可以到事件里面去找

Load函數(shù)是窗口生成后需要執(zhí)行的事件函數(shù)。

可以在里面加一些初始化函數(shù)。
Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹

1.1 常用屬性

(1)Name屬性:用來獲取或設(shè)置窗體的名稱,在應(yīng)用程序中可通過Name屬性來引用窗體。

(2) WindowState屬性: 用來獲取或設(shè)置窗體的窗口狀態(tài)。 取值有三種: Normal (窗體正常顯示)、 Minimized(窗體以最小化形式顯示)和 Maximized(窗體以最大化形式顯示)。

(3)StartPosition屬性:用來獲取或設(shè)置運(yùn)行時(shí)窗體的起始位置。

(4)Text屬性:該屬性是一個(gè)字符串屬性,用來設(shè)置或返回在窗口標(biāo)題欄中顯示的文字。

(5)Width屬性:用來獲取或設(shè)置窗體的寬度。

(6)Height屬性:用來獲取或設(shè)置窗體的高度。

(7)Left屬性:用來獲取或設(shè)置窗體的左邊緣的x坐標(biāo)(以像素為單位)。

(8)Top屬性:用來獲取或設(shè)置窗體的上邊緣的y坐標(biāo)(以像素為單位)。

(9)ControlBox屬性:用來獲取或設(shè)置一個(gè)值,該值指示在該窗體的標(biāo)題欄中是否顯示控制框。值為true
時(shí)將顯示控制框,值為false時(shí)不顯示控制框。

(10)MaximizeBox屬性:用來獲取或設(shè)置一個(gè)值,該值指示是否在窗體的標(biāo)題欄中顯示最大化按鈕。值為 true時(shí)顯示最大化按鈕,值為false時(shí)不顯示最大化按鈕。

(11)MinimizeBox 屬性:用來獲取或設(shè)置一個(gè)值,該值指示是否在窗體的標(biāo)題欄中顯示最小化按鈕。值為 true時(shí)顯示最小化按鈕,值為false時(shí)不顯示最小化按鈕。

(12)AcceptButton 屬性:該屬性用來獲取或設(shè)置一個(gè)值,該值是一個(gè)按鈕的名稱,當(dāng)按 Enter 鍵時(shí)就相當(dāng)于單擊了窗體上的該按鈕。

(13)CancelButton 屬性:該屬性用來獲取或設(shè)置一個(gè)值,該值是一個(gè)按鈕的名稱,當(dāng)按 Esc 鍵時(shí)就相當(dāng)于單擊了窗體上的該按鈕。

(14)Modal 屬性:該屬性用來設(shè)置窗體是否為有模式顯示窗體。如果有模式地顯示該窗體,該屬性值為true;否則為 false。當(dāng)有模式顯示窗體時(shí),只能對模式窗體上的對象進(jìn)行輸入。必須隱藏或關(guān)閉模式窗體(通常是響應(yīng)某個(gè)用戶操作),然后才能對另一窗體進(jìn)行輸入。有模式顯示的窗體通常用做應(yīng)用程序中的對話框。

(15)ActiveControl屬性:用來獲取或設(shè)置容器控件中的活動(dòng)控件。窗體也是一種容器控件。

(16)ActiveMdiChild屬性:用來獲取多文檔界面(MDI)的當(dāng)前活動(dòng)子窗口。

(17)AutoScroll 屬性:用來獲取或設(shè)置一個(gè)值,該值指示窗體是否實(shí)現(xiàn)自動(dòng)滾動(dòng)。如果此屬性值設(shè)置為true,則當(dāng)任何控件位于窗體工作區(qū)之外時(shí),會(huì)在該窗體上顯示滾動(dòng)條。另外,當(dāng)自動(dòng)滾動(dòng)打開時(shí),窗體的工作區(qū)自動(dòng)滾動(dòng),以使具有輸入焦點(diǎn)的控件可見。

(18)BackColor屬性:用來獲取或設(shè)置窗體的背景色。

(19)BackgroundImage屬性:用來獲取或設(shè)置窗體的背景圖像。

(20)Enabled 屬性:用來獲取或設(shè)置一個(gè)值,該值指示控件是否可以對用戶交互作出響應(yīng)。如果控件可以對用戶交互作出響應(yīng),則為 true;否則為false。默認(rèn)值為true。

(21)Font屬性:用來獲取或設(shè)置控件顯示的文本的字體。

(22)ForeColor屬性:用來獲取或設(shè)置控件的前景色。

(23)IsMdiChild屬性:獲取一個(gè)值,該值指示該窗體是否為多文檔界面(MDI)子窗體。值為 true時(shí),是子窗體,值為false時(shí),不是子窗體。

(24)IsMdiContainer 屬性:獲取或設(shè)置一個(gè)值,該值指示窗體是否為多文檔界面(MDI)中的子窗體的容器。值為true時(shí),是子窗體的容器,值為false時(shí),不是子窗體的容器。

(25)KeyPreview屬性:用來獲取或設(shè)置一個(gè)值,該值指示在將按鍵事件傳遞到具有焦點(diǎn)的控件前,窗體是否將接收該事件。值為true時(shí),窗體將接收按鍵事件,值為false時(shí),窗體不接收按鍵事件。

(26)MdiChildren屬性:數(shù)組屬性。數(shù)組中的每個(gè)元素表示以此窗體作為父級(jí)的多文檔界面(MDI)子窗體。

(27)MdiParent屬性:用來獲取或設(shè)置此窗體的當(dāng)前多文檔界面(MDI)父窗體。

(28)ShowInTaskbar屬性:用來獲取或設(shè)置一個(gè)值,該值指示是否在Windows任務(wù)欄中顯示窗體。

(29)Visible屬性:用于獲取或設(shè)置一個(gè)值,該值指示是否顯示該窗體或控件。值為true時(shí)顯示窗體或控件,為 false時(shí)不顯示。

(30)Capture屬性:如果該屬性值為true,則鼠標(biāo)就會(huì)被限定只由此控件響應(yīng),不管鼠標(biāo)是否在此控件的范圍內(nèi)。

1.2 常用方法

下面介紹一些窗體的最常用方法。
(1)Show方法:該方法的作用是讓窗體顯示出來,其調(diào)用格式為:
窗體名.Show();
其中窗體名是要顯示的窗體名稱。

(2)Hide方法:該方法的作用是把窗體隱藏出來,其調(diào)用格式為:
窗體名.Hide();
其中窗體名是要隱藏的窗體名稱。

(3)Refresh方法:該方法的作用是刷新并重畫窗體,其調(diào)用格式為:
窗體名.Refresh();
其中窗體名是要刷新的窗體名稱。

(4)Activate方法:該方法的作用是激活窗體并給予它焦點(diǎn)。其調(diào)用格式為:
窗體名.Activate();
其中窗體名是要激活的窗體名稱。

(5)Close方法:該方法的作用是關(guān)閉窗體。其調(diào)用格式為:
窗體名.Close();
其中窗體名是要關(guān)閉的窗體名稱。

(6)ShowDialog方法:該方法的作用是將窗體顯示為模式對話框。其調(diào)用格式為:
窗體名.ShowDialog();

1.3 常用事件

(1)Load事件:該事件在窗體加載到內(nèi)存時(shí)發(fā)生,即在第一次顯示窗體前發(fā)生。
雙擊窗體,就會(huì)生成窗體加載事件函數(shù)了,例如:

private void Form1_Load(object sender, EventArgs e)
{

}

(2)Activated事件:該事件在窗體激活時(shí)發(fā)生。

(3)Deactivate事件:該事件在窗體失去焦點(diǎn)成為不活動(dòng)窗體時(shí)發(fā)生。

(4)Resize事件:該事件在改變窗體大小時(shí)發(fā)生。

(5)Paint事件:該事件在重繪窗體時(shí)發(fā)生。

(6)Click事件:該事件在用戶單擊窗體時(shí)發(fā)生。

(7)DoubleClick事件:該事件在用戶雙擊窗體時(shí)發(fā)生。

(8)Closed事件:該事件在關(guān)閉窗體時(shí)發(fā)生。

2、標(biāo)簽Label

Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹
Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹
Label控件,在代碼上沒什么用處。主要是用于界面提示用的,它有一個(gè)Text屬性,用于輸入用戶提示信息的,可以在屬性窗口更改即可。

比如下面的端口號(hào),波特率等就是Label控件。
Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹

2.1、常用屬性:

(1)Text屬性:用來設(shè)置或返回標(biāo)簽控件中顯示的文本信息。

(2)AutoSize 屬性:用來獲取或設(shè)置一個(gè)值,該值指示是否自動(dòng)調(diào)整控件的大小以完整顯示其內(nèi)容。取值為 true時(shí),控件將自動(dòng)調(diào)整到剛好能容納文本時(shí)的大小,取值為false時(shí),控件的大小為設(shè)計(jì)時(shí)的大小。默認(rèn)值為false。

(3)Anchor 屬性:用來確定此控件與其容器控件的固定關(guān)系的。所謂容器控件指的是這樣一種情況:往往在控件之中還有一個(gè)控件,例如最典型的就是窗體控件中會(huì)包含很多的控件,像標(biāo)簽控件、文本框等。這時(shí)稱包含控件的控件為容器控件或父控件,而父控件稱為子控件。這時(shí)將遇到一個(gè)問題,即子控件與父控件的位置關(guān)系問題,即當(dāng)父控件的位置、大小變化時(shí),子控件按照什么樣的原則改變其位置、大小。Anchor屬性就規(guī)定了這個(gè)原則。對于 Anchor 屬性,可以設(shè)定 Top、Bottom、Right、Left 中的任意幾種,設(shè)置的方法是在屬性窗口中單擊Anchor屬性右邊的箭頭,將會(huì)出現(xiàn)如圖 9-6 的窗口,通過它可設(shè)置 Anchor 屬性值。圖 9-6 中選中變黑的方位即為設(shè)定的方位控制,即圖中所示的為 Left、Right、Bottom。此時(shí),如果父窗口變化,子窗口將保證其左邊緣與容器左邊的距離、上邊緣與容器上邊的距離、底邊與容器底邊的距離等不變,效果如圖9-7 所示。可見隨著窗體的大小變化, Label控件也會(huì)隨著變 。 而 不 變 的 則 是Archor中所規(guī)定的邊緣與相應(yīng)的父控件邊緣的距離。

(4)BackColor屬性:
用來獲取或設(shè)置控件的背景色。當(dāng)該屬性值設(shè)置為 Color.Transparent 時(shí),標(biāo)簽將透明顯示,即背景色不再顯示出來。

(5)BorderStyle 屬性:用來設(shè)置或返回邊框。有三種選擇:BorderStyle.None 為無邊框(默認(rèn)),BorderStyle.FixedSingle 為固
定單邊框,BorderStyle.Fixed3D 為三維邊框。

(6)TabIndex屬性:用來設(shè)置或返回對象的Tab鍵順序。

(7)Enabled 屬性:用來設(shè)置或返回控件的狀態(tài)。值為 true 時(shí)允許使用控件,值為 false 時(shí)禁止使用控件,此時(shí)標(biāo)簽呈暗淡色,一
般在代碼中設(shè)置。圖9-8 邊框效果圖另外,標(biāo)簽還具有Visible、ForeColor、Font等屬性,具體含義請參考窗體的相應(yīng)屬性。

3、文本框TextBox

Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹

3.1、主要屬性:

(1)Text屬性:Text屬性是文本框最重要的屬性,因?yàn)橐@示的文本就包含在Text屬性中。默認(rèn)情況下,最多可在一個(gè)文本框中輸入2048個(gè)字符。如果將MultiLine屬性設(shè)置為true,則最多可輸入32KB 的文本。Text屬性可以在設(shè)計(jì)時(shí)使用【屬性】窗口設(shè)置,也可以在運(yùn)行時(shí)用代碼設(shè)置或者通過用戶輸入來設(shè)置??梢栽谶\(yùn)行時(shí)通過讀取Text屬性來獲得文本框的當(dāng)前內(nèi)容。

Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹
(2)MaxLength 屬性:用來設(shè)置文本框允許輸入字符的最大長度,該屬性值為 0 時(shí),不限制輸入的字符數(shù)。

(3)MultiLine 屬性:用來設(shè)置文本框中的文本是否可以輸入多行并以多行顯示。值為 true 時(shí),允許多行顯示。值為false時(shí)不允許多行顯示,一旦文本超過文本框?qū)挾葧r(shí),超過部分不顯示。

(4)HideSelection屬性:用來決定當(dāng)焦點(diǎn)離開文本框后,選中的文本是否還以選中的方式顯示,值為true,則不以選中的方式顯示,值為 false將依舊以選中的方式顯示。

(5)ReadOnly屬性:用來獲取或設(shè)置一個(gè)值,該值指示文本框中的文本是否為只讀。值為 true時(shí)為只讀,值為 false時(shí)可讀可寫。

(6)PasswordChar 屬性:是一個(gè)字符串類型,允許設(shè)置一個(gè)字符,運(yùn)行程序時(shí),將輸入到 Text 的內(nèi)容全部顯示為該屬性值,從而起到保密作用,通常用來輸入口令或密碼。

(7) ScrollBars屬性: 用來設(shè)置滾動(dòng)條模式, 有四種選擇: ScrollBars.None (無滾動(dòng)條), ScrollBars.Horizontal(水平滾動(dòng)條),ScrollBars.Vertical(垂直滾動(dòng)條),ScrollBars.Both(水平和垂直滾動(dòng)條)。
注意:只有當(dāng)MultiLine屬性為true時(shí),該屬性值才有效。在WordWrap屬性值為true時(shí),水平滾動(dòng)條將不起作用
Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹
如果ScrollBars屬性設(shè)置為Both沒有出現(xiàn)水平滾動(dòng)條,則查看WordWrap屬性是否設(shè)置為false。

(8)SelectionLength屬性:用來獲取或設(shè)置文本框中選定的字符數(shù)。只能在代碼中使用,值為0 時(shí),表示未選中任何字符。

(9)SelectionStart屬性:用來獲取或設(shè)置文本框中選定的文本起始點(diǎn)。只能在代碼中使用,第一個(gè)字符的位置為0,第二個(gè)字符的位置為1,依此類推。

(10)SelectedText 屬性:用來獲取或設(shè)置一個(gè)字符串,該字符串指示控件中當(dāng)前選定的文本。只能在代碼中使用。

(11)Lines:該屬性是一個(gè)數(shù)組屬性,用來獲取或設(shè)置文本框控件中的文本行。即文本框中的每一行存放在 Lines數(shù)組的一個(gè)元素中。

(12)Modified:用來獲取或設(shè)置一個(gè)值,該值指示自創(chuàng)建文本框控件或上次設(shè)置該控件的內(nèi)容后,用戶是否修改了該控件的內(nèi)容。值為true表示修改過,值為 false表示沒有修改過。

(13)TextLength屬性:用來獲取控件中文本的長度。

(14)WordWrap:用來指示多行文本框控件在輸入的字符超過一行寬度時(shí)是否自動(dòng)換行到下一行的開始,值為 true,表示自動(dòng)換到下一行的開始,值為false表示不自動(dòng)換到下一行的開始。

3.2、常用方法:

(1)AppendText方法:把一個(gè)字符串添加到文件框中文本的后面,調(diào)用的一般格式如下:
文本框?qū)ο?AppendText(str)參數(shù) str是要添加的字符串。

(2)Clear方法:從文本框控件中清除所有文本。調(diào)用的一般格式如下:
文本框?qū)ο?Clear()該方法無參數(shù)。

(3)Focus方法:是為文本框設(shè)置焦點(diǎn)。如果焦點(diǎn)設(shè)置成功,值為 true,否則為false。調(diào)用的一般格式如下:
文本框?qū)ο?Focus()該方法無參數(shù)。

(4)Copy方法:將文本框中的當(dāng)前選定內(nèi)容復(fù)制到剪貼板上。調(diào)用的一般格式如下:
文本框?qū)ο?Copy()該方法無參數(shù)。

(5)Cut方法:將文本框中的當(dāng)前選定內(nèi)容移動(dòng)到剪貼板上。調(diào)用的一般格式如下:
文本框?qū)ο?Cut()該方法無參數(shù)。

(6)Paste方法:用剪貼板的內(nèi)容替換文本框中的當(dāng)前選定內(nèi)容。調(diào)用的一般格式如下:
文本框?qū)ο?Paste()該方法無參數(shù)。

(7)Undo 方法:撤銷文本框中的上一個(gè)編輯操作。調(diào)用的一般格式如下:
文本框?qū)ο?Undo()該方法無參數(shù)。

(8)ClearUndo方法:從該文本框的撤銷緩沖區(qū)中清除關(guān)于最近操作的信息,根據(jù)應(yīng)用程序的狀態(tài),可以使用此方法防止重復(fù)執(zhí)行撤銷操作。調(diào)用的一般格式如下:
文本框?qū)ο?ClearUndo()該方法無參數(shù)。

(9)Select方法:用來在文本框中設(shè)置選定文本。調(diào)用的一般格式如下:
文本框?qū)ο?Select(start,length)
該方法有兩個(gè)參數(shù),第一個(gè)參數(shù)start用來設(shè)定文本框中當(dāng)前選定文本的第一個(gè)字符的位置,第二個(gè)參數(shù)length用來設(shè)定要選擇的字符數(shù)。

(10)SelectAll方法:用來選定文本框中的所有文本。調(diào)用的一般格式如下:
文本框?qū)ο?SelectAll()該方法無參數(shù)。

textBox1.Text = "hello world";		// text屬性,就是用來表示文本框中的文本的??梢暂敵鑫谋窘o用戶看,或者用戶自己在文本框輸入文本信息
textBox1.ReadOnly = true;			// ReadOnly屬性,把文本框設(shè)置為只讀,這樣用戶就不能輸入文本了
textBox1.Clear();					// Clear方法,就是清除文本框中的所有文本
textBox1.AppendText("1234567");		// 在文本框中追加文本內(nèi)容,不會(huì)把文本框原有的文本覆蓋

3.3、常用事件:

(1)GotFocus事件:該事件在文本框接收焦點(diǎn)時(shí)發(fā)生。
(2)LostFocus事件:該事件在文本框失去焦點(diǎn)時(shí)發(fā)生。
(3)TextChanged事件:該事件在Text屬性值更改時(shí)發(fā)生。無論是通過編程修改還是用戶交互更改文本框的 Text屬性值,均會(huì)引發(fā)此事件。

4、富文本RichTextBox

Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹

RichTextBox是一種既可以輸入文本、 又可以編輯文本的文字處理控件, 與TextBox控件相比, RichTextBox控件的文字處理功能更加豐富, 不僅可以設(shè)定文字的顏色、 字體, 還具有字符串檢索功能。 另外, RichTextBox控件還可以打開、編輯和存儲(chǔ).rtf格式文件、ASCII文本格式文件及Unicode編碼格式的文件。

4.1、常用屬性

上面介紹的 TextBox 控件所具有的屬性,RichTextBox 控件基本上都具有,除此之外,該控件還具有一些其他屬性。

(1)RightMargin屬性:用來設(shè)置或獲取右側(cè)空白的大小,單位是像素。通過該屬性可以設(shè)置右側(cè)空白,如希望右側(cè)空白為50像素,可使用如下語句:
RichTextBox1.RightMargin=RichTextBox1.Width-50;

(2)Rtf屬性:用來獲取或設(shè)置RichTextBox控件中的文本,包括所有RTF格式代碼。可以使用此屬性將RTF格式文本放到控件中以進(jìn)行顯示,或提取控件中的RTF格式文本。此屬性通常用于在RichTextBox控件和其他RTF源(如 MicrosoftWord或 Windows寫字板)之間交換信息。

(3)SelectedRtf 屬性:用來獲取或設(shè)置控件中當(dāng)前選定的 RTF 格式的格式文本。此屬性使用戶得以獲取控件中的選定文本,包括RTF格式代碼。如果當(dāng)前未選定任何文本,給該屬性賦值將把所賦的文本插入到插入點(diǎn)處。如果選定了文本,則給該屬性所賦的文本值將替換掉選定文本。

(4)SelectionColor屬性:用來獲取或設(shè)置當(dāng)前選定文本或插入點(diǎn)處的文本顏色。

(5)SelectionFont屬性:用來獲取或設(shè)置當(dāng)前選定文本或插入點(diǎn)處的字體。

4.2、常用方法

前面介紹的 TextBox 控件所具有的方法,RichTextBox 控件基本上都具有,除此之外,該控件還具有一些其他方法。
(1)Redo方法:用來重做上次被撤銷的操作。調(diào)用的一般格式如下:
RichTextBox對象.Redo()
該方法無參數(shù)。

(2)Find方法:用來從RichTextBox控件中查找指定的字符串。經(jīng)常使用的調(diào)用格式如下:
[格式1]:
RichTextBox對象.Find(str)
[功能]:在指定的“RichTextBox”控件中查找文本,并返回搜索文本的第一個(gè)字符在控件內(nèi)的位置。如果未找到搜索字符串或者str參數(shù)指定的搜索字符串為空,則返回值為1。

[格式2]:
RichTextBox對象.Find(str,RichTextBoxFinds)
[功能]:在“RichTextBox 對象”指定的文本框中搜索 str 參數(shù)中指定的文本,并返回文本的第一個(gè)字符在控件內(nèi)的位置。如果返回負(fù)值,則未找到所搜索的文本字符串。還可以使用此方法搜索特定格式的文本。
參數(shù)RichTextBoxFinds指定如何在控件中執(zhí)行文本搜索,其取值及其含義如表9-4 所示。

[格式3]:
RichTextBox對象.Find(str,start,RichTextBoxFinds)
[功能]:這里Find方法與前面的格式2 基本類似,不同的只是通過設(shè)置控件文本內(nèi)的搜索起始位置來縮小文本搜索范圍,start參數(shù)表示開始搜索的位置。此功能使用戶得以避開可能已搜索過的文本或已經(jīng)知道不包含要搜索的特定文本的文本。如果在options參數(shù)中指定了RichTextBoxFinds.Reverse值,則 start參數(shù)的值將指示反向搜索結(jié)束的位置,因?yàn)樗阉魇菑奈臋n底部開始的。

(3)SaveFile方法:用來把RichTextBox中的信息保存到指定的文件中,調(diào)用格式有以下三種。
[格式1]:
RichTextBox對象名.SaveFile(文件名);
[功能]:將 RichTextBox控件中的內(nèi)容保存為RTF格式文件中。

[格式2]:
RichTextBox對象名.SaveFile(文件名,文件類型);
[功能]:將 RichTextBox控件中的內(nèi)容保存為“文件類型”指定的格式文件中。

[格式3]:
RichTextBox對象名.SaveFile(數(shù)據(jù)流,數(shù)據(jù)流類型);
[功能]:將 RichTextBox控件中的內(nèi)容保存為“數(shù)據(jù)流類型”指定的數(shù)據(jù)流類型文件中。
其中,文件類型或數(shù)據(jù)流類型的取值及含義如表9-5所示。

(4)LoadFile方法:使用LoadFile方法可以將文本文件、RTF文件裝入RichTextBox控件。主要的調(diào)用格
式有以下三種。
[格式1]:
RichTextBox對象名.LoadFile(文件名);
[功能]:將RTF格式文件或標(biāo)準(zhǔn)ASCII文本文件加載到RichTextBox控件中。

[格式2]:
RichTextBox對象名.LoadFile(數(shù)據(jù)流,數(shù)據(jù)流類型);
[功能]:將現(xiàn)有數(shù)據(jù)流的內(nèi)容加載到RichTextBox控件中。

[格式3]:
RichTextBox對象名.LoadFile(文件名,文件類型);
[功能]:將特定類型的文件加載到RichTextBox控件中。
注意:文件類型和數(shù)據(jù)流格式見表9-5。

5、NumericUpDown 控件

Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹

【W(wǎng)indows 窗體】控件組中的 NumericUpDown 控件看起來像是一個(gè)文本框與一對用戶可單擊以調(diào)整值的箭頭的組合??梢酝ㄟ^單擊向上和向下按鈕、按向上和向下箭頭鍵來增大和減小數(shù)字,也可以直接輸入數(shù)字。單擊向上箭頭鍵時(shí),值向最大值方向增加;單擊向下箭頭鍵時(shí),值向最小值方向減少。

5.1 常用屬性

(1)DecimalPlaces:獲取或設(shè)置該控件中顯示的小數(shù)位數(shù)。
(2)Hexadecimal:獲取或設(shè)置一個(gè)值,該值指示該控件是否以十六進(jìn)制格式顯示所包含的值。
(3)Increment:獲取或設(shè)置單擊向上或向下按鈕時(shí),該控件遞增或遞減的值。
(4)Maximum:獲取或設(shè)置該控件的最大值。
(5)Minimum:獲取或設(shè)置該控件的最小值。
(6)Value:獲取或設(shè)置該控件的當(dāng)前值。
與 TextBox控件一樣,NumericUpDown控件的常用事件有:ValueChanged、GotFocus、LostFocus等。

按鈕類控件

6、按鈕Button

Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹

Button控件又稱按鈕控件,是 Windows應(yīng)用程序中最常用的控件之一,通常用它來執(zhí)行命令。如果按鈕具有焦點(diǎn),就可以使用鼠標(biāo)左鍵、Enter鍵或空格鍵觸發(fā)該按鈕的Click事件。通過設(shè)置窗體的AcceptButton 或 CancelButton 屬性,無論該按鈕是否有焦點(diǎn),都可以使用戶通過按 Enter 或 Esc 鍵來觸發(fā)按鈕的 Click 事件。一般不使用 Button 控件的方法。Button 控件也具有許多如 Text、ForeColor 等的常規(guī)屬性,此處不再介紹,只介紹該控件有特色的屬性。以后介紹的控件也采用同樣的方法來處理。

6.1、常用屬性

(1)DialogResult屬性:當(dāng)使用ShowDialog方法顯示窗體時(shí),可以使用該屬性設(shè)置當(dāng)用戶按了該按鈕后,ShowDialog方法的返回值。值有:OK、Cancel、Abort、Retry、Ignore、Yes、No等。
(2)Image屬性:用來設(shè)置顯示在按鈕上的圖像。
(3)FlatStyle屬性:用來設(shè)置按鈕的外觀。

6.2、常用事件:

(1)Click事件:當(dāng)用戶用鼠標(biāo)左鍵單擊按鈕控件時(shí),將發(fā)生該事件。
雙擊按鈕,就會(huì)自動(dòng)生成一個(gè)對應(yīng)的點(diǎn)擊事件函數(shù):

private void button1_Click(object sender, EventArgs e)
{

}

(2)MouseDown事件:當(dāng)用戶在按鈕控件上按下鼠標(biāo)按鈕時(shí),將發(fā)生該事件。
(3)MouseUp事件:當(dāng)用戶在按鈕控件上釋放鼠標(biāo)按鈕時(shí),將發(fā)生該事件。

7、分組框GroupBox

Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹

GroupBox控件又稱為分組框,該控件常用于為其他控件提供可識(shí)別的分組,其典型的用法之一就是給RadioButton控件分組??梢酝ㄟ^分組框的Text屬性為分組框中的控件向用戶提供提示信息。設(shè)計(jì)時(shí),向GroupBox 控件中添加控件的方法有兩種:一是直接在分組框中繪制控件;二是把某一個(gè)已存在的控件復(fù)制到剪貼板上,然后選中分組框,再執(zhí)行粘貼操作即可。位于分組框中的所有控件隨著分組框的移動(dòng)而一起移動(dòng),隨著分組框的刪除而全部刪除,分組框的Visible屬性和Enabled屬性也會(huì)影響到分組框中的所有控件。分組框的最常用的屬性是Text,一般用來給出分組提示。

8、單選按鈕RadioButton

Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹

RadioButton又稱單選按鈕,其在工具箱中的圖標(biāo)為 ,單選按鈕通常成組出現(xiàn),用于提供兩個(gè)或多個(gè)互斥選項(xiàng),即在一組單選鈕中只能選擇一個(gè),如圖所示:
Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹

8.1、常用屬性:

(1)Checked屬性:用來設(shè)置或返回單選按鈕是否被選中,選中時(shí)值為true,沒有選中時(shí)值為false。
(2)AutoCheck 屬性:如果 AutoCheck 屬性被設(shè)置為 true(默認(rèn)),那么當(dāng)選擇該單選按鈕時(shí),將自動(dòng)清除該組中所有其他單選按鈕。對一般用戶來說,不需改變該屬性,采用默認(rèn)值(true)即可。
(3)Appearance 屬性:用來獲取或設(shè)置單選按鈕控件的外觀。當(dāng)其取值為 Appearance.Button 時(shí),將使單選按鈕的外觀像命令按鈕一樣:當(dāng)選定它時(shí),它看似已被按下。當(dāng)取值為 Appearance.Normal 時(shí),就是默認(rèn)的單選按鈕的外觀。
(4)Text屬性:用來設(shè)置或返回單選按鈕控件內(nèi)顯示的文本,該屬性也可以包含訪問鍵,即前面帶有“&”符號(hào)的字母,這樣用戶就可以通過同時(shí)按Alt鍵和訪問鍵來選中控件。

8.2、常用事件:

(1)Click事件:當(dāng)單擊單選按鈕時(shí),將把單選按鈕的Checked屬性值設(shè)置為true,同時(shí)發(fā)生Click事件。
(2)CheckedChanged事件:當(dāng)Checked屬性值更改時(shí),將觸發(fā)CheckedChanged事件。

9、復(fù)選框CheckBox

Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹

CheckBox控件的常用屬性如下。
(1)TextAlign屬性:用來設(shè)置控件中文字的對齊方式,有9種選擇,如圖9-16 所示。從上到下、從左至右分別是:ContentAlignment.TopLeft、ContentAlignment.TopCenter、ContentAlignment.TopRight、ContentAlignment.MiddleLeft、ContentAlignment.MiddleCenter、ContentAlignment.MiddleRight、ContentAlignment.BottomLeft、ContentAlignment.BottomCenter
和 ContentAlignment.BottomRight。該屬性的默認(rèn)值為ContentAlignment.MiddleLeft,即文字左對齊、居控件垂直方向中央。
Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹

(2)ThreeState屬性:用來返回或設(shè)置復(fù)選框是否能表示三種狀態(tài),如果屬性值為true時(shí),表示可以表示三種狀態(tài)—選中、沒選中和中間態(tài)(CheckState.Checked、CheckState.Unchecked 和 CheckState.Indeterminate),屬性值為false時(shí),只能表示兩種狀態(tài)——選中和沒選中。

(3)Checked屬性:用來設(shè)置或返回復(fù)選框是否被選中,值為true時(shí),表示復(fù)選框被選中,值為false時(shí),表示復(fù)選框沒被選中。當(dāng)ThreeState屬性值為true時(shí),中間態(tài)也表示選中。

(4)CheckState 屬性:用來設(shè)置或返回復(fù)選框的狀態(tài)。在 ThreeState 屬性值為 false 時(shí),取值有CheckState.Checked或CheckState.Unchecked。在ThreeState屬性值被設(shè)置為True時(shí),CheckState還可以取值 CheckState.Indeterminate,在此時(shí),復(fù)選框顯示為淺灰色選中狀態(tài),該狀態(tài)通常表示該選項(xiàng)下的多個(gè)子選項(xiàng)未完全選中。CheckBox控件的常用事件有Click和CheckedChanged等,其含義及觸發(fā)時(shí)機(jī)與單選按鈕完成一致。

列表類控件

10、列表框ListBox

Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹
Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹

ListBox 控件又稱列表框,它顯示一個(gè)項(xiàng)目列表供用戶選擇。在列表框中,用戶一次可以選擇一項(xiàng),也可以選擇多項(xiàng)。
1、常用屬性:
(1) Items屬性: 用于存放列表框中的列表項(xiàng),是一個(gè)集合。通過該屬性,可以添加列表項(xiàng)、移除列表項(xiàng)和獲得列表項(xiàng)的數(shù)目。

(2)MultiColumn 屬性:用來獲取或設(shè)置一個(gè)值,該值指示ListBox是否支持多列。值為 true 時(shí)表示支持多列,值為 false 時(shí)不支持多列。當(dāng)使用多列模式時(shí),可以使控件得以顯示更多可見項(xiàng),如圖9-19 所示。

(3)ColumnWidth 屬性:用來獲取或設(shè)置多列 ListBox控件中列的寬度。

(4)SelectionMode屬性:用來獲取或設(shè)置在ListBox控件中選擇列表項(xiàng)的方法。當(dāng) SelectionMode屬性設(shè)置為 SelectionMode.MultiExtended 時(shí),按下 Shift 鍵的同時(shí)單擊鼠標(biāo)或者同時(shí)按 Shift 鍵和箭頭鍵之一(上箭頭鍵、下箭頭鍵、左箭頭鍵和右箭頭鍵),會(huì)將選定內(nèi)容從前一選定項(xiàng)擴(kuò)展到當(dāng)前項(xiàng)。按 Ctrl 鍵的同時(shí)單擊鼠標(biāo)將選擇或撤銷選擇列表中的某項(xiàng);當(dāng)該屬性設(shè)置為 SelectionMode.MultiSimple 時(shí),鼠標(biāo)單擊或按空格鍵將選擇或撤銷選擇列表中的某項(xiàng);該屬性的默認(rèn)值為SelectionMode.One,則只能選擇一項(xiàng)。

(5)SelectedIndex屬性:用來獲取或設(shè)置ListBox控件中當(dāng)前選定項(xiàng)的從零開始的索引。如果未選定任何項(xiàng),則返回值為1。對于只能選擇一項(xiàng)的ListBox控件,可使用此屬性確定ListBox中選定的項(xiàng)的索引。如果 ListBox 控件的 SelectionMode 屬性設(shè)置為 SelectionMode.MultiSimple 或 SelectionMode.MultiExtended,并在該列表中選定多個(gè)項(xiàng),此時(shí)應(yīng)用SelectedIndices來獲取選定項(xiàng)的索引。

(6)SelectedIndices。該屬性用來獲取一個(gè)集合,該集合包含 ListBox 控件中所有選定項(xiàng)的從零開始的索引。

(7)SelectedItem屬性:獲取或設(shè)置ListBox中的當(dāng)前選定項(xiàng)。

(8)SelectedItems屬性:獲取 ListBox控件中選定項(xiàng)的集合,通常在ListBox控件的SelectionMode屬性值設(shè)置為SelectionMode.MultiSimple或SelectionMode.MultiExtended(它指示多重選擇ListBox)時(shí)使用。

(9)Sorted屬性:獲取或設(shè)置一個(gè)值,該值指示ListBox控件中的列表項(xiàng)是否按字母順序排序。如果列表項(xiàng)按字母排序,該屬性值為true;如果列表項(xiàng)不按字母排序,該屬性值為false。默認(rèn)值為false。在向已排序的 ListBox控件中添加項(xiàng)時(shí),這些項(xiàng)會(huì)移動(dòng)到排序列表中適當(dāng)?shù)奈恢谩?/p>

(10)Text 屬性:該屬性用來獲取或搜索 ListBox 控件中當(dāng)前選定項(xiàng)的文本。當(dāng)把此屬性值設(shè)置為字符串值時(shí),ListBox 控件將在列表內(nèi)搜索與指定文本匹配的項(xiàng)并選擇該項(xiàng)。若在列表中選擇了一項(xiàng)或多項(xiàng),該屬性將返回第一個(gè)選定項(xiàng)的文本。

(11)ItemsCount屬性:該屬性用來返回列表項(xiàng)的數(shù)目。

2、常用方法:
(1)FindString方法:用來查找列表項(xiàng)中以指定字符串開始的第一個(gè)項(xiàng),有兩種調(diào)用格式。
[格式1]:
ListBox對象.FindString(s);
[功能]:在“ListBox 對象”指定的列表框中查找字符串 s,如果找到則返回該項(xiàng)從零開始的索引;如果找不到匹配項(xiàng),則返回ListBox.NoMatches。

[格式2]:
ListBox對象.FindString(s,n);
[功能]:在 ListBox 對象指定的列表框中查找字符串 s,查找的起始項(xiàng)為n+1,即 n 為開始查找的前一項(xiàng)的索引。如果找到則返回該項(xiàng)從零開始的索引;如果找不到匹配項(xiàng),則返回ListBox.NoMatches。
注意:FindString 方式只是詞語部分匹配,即要查找的字符串在列表項(xiàng)的開頭,便認(rèn)為是匹配的,如果要精確匹配,即只有在列表項(xiàng)與查找字符串完全一致時(shí)才認(rèn)為匹配,可使用FindStringExact方法,調(diào)用格式與功能與FindString基本一致。

(2)SetSelected方法:用來選中某一項(xiàng)或取消對某一項(xiàng)的選擇,調(diào)用格式及功能如下。
[格式]:
ListBox對象.SetSelected(n,l);
[功能]:如果參數(shù) l 的值是 true,則在 ListBox 對象指定的列表框中選中索引為 n 的列表項(xiàng),如果參數(shù)l 的值是 false,則索引為n 的列表項(xiàng)未被選中。

(3)Items.Add方法:用來向列表框中增添一個(gè)列表項(xiàng),調(diào)用格式及功能如下。
[格式]:
ListBox對象.Items.Add(s);
[功能]:把參數(shù)s添加到“l(fā)istBox對象”指定的列表框的列表項(xiàng)中。

(4)Items.Insert方法:用來在列表框中指定位置插入一個(gè)列表項(xiàng),調(diào)用格式及功能如下。
[格式]:
ListBox對象.Items.Insert(n,s);
[功能]:參數(shù)n代表要插入的項(xiàng)的位置索引,參數(shù) s代表要插入的項(xiàng),其功能是把s插入到“l(fā)istBox對象”指定的列表框的索引為n的位置處。

(5)Items.Remove方法:用來從列表框中刪除一個(gè)列表項(xiàng),調(diào)用格式及功能如下。
[格式]:
ListBox對象.Items.Remove(k);
[功能]:從 ListBox對象指定的列表框中刪除列表項(xiàng)s。

(6)Items.Clear方法:用來清除列表框中的所有項(xiàng)。其調(diào)用格式如下:
ListBox對象.Items.Clear();
該方法無參數(shù)。

(7)BeginUpdate方法和EndUpdate方法:這兩個(gè)方法均無參數(shù),調(diào)用格式分別如下:
ListBox對象.BeginUpdate();
ListBox對象.EndUpdate();
這兩個(gè)方法的作用是保證使用 Items.Add 方法向列表框中添加列表項(xiàng)時(shí),不重繪列表框。即在向列表框添加項(xiàng)之前,調(diào)用BeginUpdate方法,以防止每次向列表框中添加項(xiàng)時(shí)都重新繪制 ListBox 控件。完成向列表框中添加項(xiàng)的任務(wù)后,再調(diào)用 EndUpdate 方法使 ListBox 控件重新繪制。
當(dāng)向列表框中添加大量的列表項(xiàng)時(shí),使用這種方法添加項(xiàng)可以防止在繪制 ListBox 時(shí)的閃爍現(xiàn)象。一個(gè)例子程序如下:

publicvoidAddToMyListBox()
{
	listBox1.BeginUpdate();
	for(intx=1;x<5000;x++)
	{
		listBox1.Items.Add(“Item”+x.ToString());
	}
	listBox1.EndUpdate();
}

3、常用事件:
ListBox控件常用事件有Click和 SelectedIndexChanged,SelectedIndexChanged事件在列表框中改變選中項(xiàng)時(shí)發(fā)生。

11、下拉列表ComboBox

Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹

ComboBox 控件又稱組合框,默認(rèn)情況下,組合框分兩個(gè)部分顯示:頂部是一個(gè)允許輸入文本的文本框,下面的列表框則顯示列表項(xiàng)??梢哉J(rèn)為ComboBox就是文本框與列表框的組合,與文本框和列表框的功能基本一致。與列表框相比,組合框不能多選,它無 SelectionMode 屬性。但組合框有一個(gè)名為DropDownStyle的屬性,該屬性用來設(shè)置或獲取組合框的樣式,其取值及含義如表9-10所示。
Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹

組合框的各種樣式如圖所示, 左邊的組合框能夠通過文本框輸入文本, 中間的組合框則不能輸入文本,只能選擇列表項(xiàng)。
Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹

12、復(fù)選列表框CheckedListBox

Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹

CheckedListBox控件又稱復(fù)選列表框,它擴(kuò)展了ListBox控件,它幾乎能完成列表框可以完成的所有任務(wù),并且還可以在列表項(xiàng)旁邊顯示復(fù)
選標(biāo)記。兩種控件間的其他差異在于,復(fù)選列表框只支持DrawMode.Normal,并且復(fù)選列表框只能有一項(xiàng)選定或沒有任何選定。此處需要注意一點(diǎn):選定的項(xiàng)是指窗體上突出顯示的項(xiàng),已選中的項(xiàng)是指左邊的復(fù)選框被選中的項(xiàng)。
除具有列表框的全部屬性外,它還具有以下屬性。
(1)CheckOnClick屬性:獲取或設(shè)置一個(gè)值,該值指示當(dāng)某項(xiàng)被選定時(shí)是否應(yīng)切換左側(cè)的復(fù)選框。如果立即切換選中標(biāo)記,則該屬性值為true;否則為false。默認(rèn)值為false。
(2)CheckedItems 屬性:該屬性是復(fù)選列表框中選中項(xiàng)的集合,只代表處于CheckState. Checked或CheckState.Indeterminate狀態(tài)的那些項(xiàng)。 該集合中的索引按升序排列。
(3)CheckedIndices 屬性:該屬性代表選中項(xiàng)(處于選中狀態(tài)或中間狀態(tài)的那些項(xiàng))索引的集合。

13、圖片框PictureBox

PictureBox 控件又稱圖片框,常用于圖形設(shè)計(jì)和圖像處理應(yīng)用程序,在該控件中可以加載的圖像文件格式有:位圖文件(.Bmp)、圖標(biāo)文件(.ICO)、圖元文件(.wmf)、.JPEG 和.GIF 文件。下而僅介紹該控件的常用屬性和事件。
1、常用屬性:
(1)Image屬性:用來設(shè)置控件要顯示的圖像。把文件中的圖像加載到圖片框通常采用以下三種方式。
設(shè)計(jì)時(shí)單擊Image屬性,在其后將出現(xiàn)【…】按鈕,單擊該按鈕將出現(xiàn)一個(gè)【打開】對話框,在該對話框中找到相應(yīng)的圖形文件后單擊【確定】按鈕。產(chǎn)生一個(gè)Bitmap類的實(shí)例并賦值給Image屬性。形式如下:
Bitmapp=newBitmap(圖像文件名);
pictureBox對象名.Image=p;
通過 Image.FromFile方法直接從文件中加載。形式如下:
pictureBox對象名.Image=Image.FromFile(圖像文件名);
(2)SizeMode屬性:用來決定圖像的顯示模式。

pictureBox1.Visible = false;		// 該屬性可以設(shè)置圖片顯示或者不顯示
pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;	// 設(shè)置顯示的大小模式

14、Timer 控件

Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹

Timer 控件又稱定時(shí)器控件或計(jì)時(shí)器控件,在工具箱中的圖標(biāo)是 ,該控件的主要作用是按一定的時(shí)間間隔周期性地觸發(fā)一個(gè)名為Tick的事件, 因此在該事件的代碼中可以放置一些需要每隔一段時(shí)間重復(fù)執(zhí)行的程序段。在程序運(yùn)行時(shí),定時(shí)器控件是不可見的。
1、常用屬性:
(1)Enabled 屬性:用來設(shè)置定時(shí)器是否正在運(yùn)行。值為 true 時(shí),定時(shí)器正在運(yùn)行,值為 false 時(shí),定時(shí)
器不在運(yùn)行。
(2)Interval屬性:用來設(shè)置定時(shí)器兩次Tick事件發(fā)生的時(shí)間間隔,以毫秒為單位。如它的值設(shè)置為500,
則將每隔0.5秒發(fā)生一個(gè)Tick事件。
2、常用方法:
(1)Start方法:用來啟動(dòng)定時(shí)器。調(diào)用的一般格式如下:
Timer控件名.start();
該方法無參數(shù)。
(2)Stop方法:用來停止定時(shí)器。調(diào)用的一般格式如下:
Timer控件名.stop();
該方法無參數(shù)。
3、常用事件:
定義器控件響應(yīng)的事件只有Tick,每隔Interval時(shí)間后將觸發(fā)一次該事件。

15、ProgressBar控件和 TrackBar控件

1.ProgressBar控件
Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹

ProgressBar 控件又稱進(jìn)度條控件,該控件在水平欄中顯示適當(dāng)長度的矩形來指示進(jìn)程的進(jìn)度。當(dāng)執(zhí)行進(jìn)程時(shí),進(jìn)度條用系統(tǒng)突出顯示顏色在水平欄中從左向右進(jìn)行填充。進(jìn)程完成時(shí),進(jìn)度欄被填滿。當(dāng)某進(jìn)程運(yùn)行時(shí)間較長時(shí),如果沒有視覺提示,用戶可能會(huì)認(rèn)為應(yīng)用程序不響應(yīng),通過在應(yīng)用程序中使用進(jìn)度條,就可以告訴用戶應(yīng)用程序正在執(zhí)行冗長的任務(wù)且應(yīng)用程序仍在響應(yīng)。
ProgressBar控件的常用屬性如下。
(1)Maximum屬性:用來設(shè)置或返回進(jìn)度條能夠顯示的最大值,默認(rèn)值為100。
(2)Minimum屬性:用來設(shè)置或返回進(jìn)度條能夠顯示的最小值,默認(rèn)值為0。
(3)Value屬性:用來設(shè)置或返回進(jìn)度條的當(dāng)前位置。
(4)Step屬性:用來設(shè)置或返回一個(gè)值,該值用來決定每次調(diào)用PerformStep 方法時(shí), Value屬性增加的幅度。例如,如果要復(fù)制一組文件,則可將 Step 屬性的值設(shè)置為 1,并將 Maximum 屬性的值設(shè)置為要復(fù)制的文件總數(shù)。在復(fù)制每個(gè)文件時(shí),可以調(diào)用PerformStep方法按Step屬性的值增加進(jìn)度欄。
ProgressBar控件的常用方法如下。
(1)Increment方法:用來按指定的數(shù)量增加進(jìn)度條的值,調(diào)用的一般格式如下:
progressBar對象.Increment(n);
其功能是把“progressBar對象”指定的進(jìn)度條對象的Value屬性值增加n,n為整數(shù)。調(diào)用該方法之后,若Value屬性大于Maximum屬性的值,則 Value屬性值就是Maximum值,若Value屬性小于Minimum屬性值,則 Value屬性值就是Minimum值。
(2)PerformStep方法:用來按step屬性值來增加進(jìn)度條的Value屬性值,調(diào)用的一般格式如下:
progressBar對象.PerformStep();
該方法無參數(shù)。例如,下列程序段是一個(gè)顯示復(fù)制多個(gè)文件的進(jìn)度的進(jìn)度條使用方法。

privatevoidCopyWithProgress(string[]filenames) 
{
	pBar1.Visible=true; 
	pBar1.Minimum=1; 
	pBar1.Maximum=filenames.Length; 
	pBar1.Value=1; 
	pBar1.Step=1; 
	for(intx=1;x<=filenames.Length;x++) 
	{
		if(CopyFile(filenames[x-1])==true) 
		{ 
			pBar1.PerformStep(); 
		}   
	} 
} 

ProgressBar控件能響應(yīng)很多事件,但一般很少使用。
2.TrackBar控件
Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹

TrackBar 控件又稱滑塊控件、跟蹤條控件。該控件主要用于在大量信息中進(jìn)行瀏覽,或用于以可視形式調(diào)整數(shù)字設(shè)置。TrackBar控件有兩部分:縮略圖(也稱為滑塊)和刻度線??s略圖是可以調(diào)整的部分,其位置與 Value 屬性相對應(yīng)??潭染€是按規(guī)則間隔分隔的可視化指示符。跟蹤條控件可以按指定的增量移動(dòng),并且可以水平或者垂直排列。
TrackBar控件的常用屬性如下。
(1)Maximum屬性:用來獲取或設(shè)置TrackBar控件可表示的范圍上限,即最大值。
(2)Minimum屬性:用來獲取或設(shè)置TrackBar控件可表示的范圍下限,即最小值。
(3)Orientation屬性:用來獲取或設(shè)置一個(gè)值,該值指示跟蹤條是在水平方向還是在垂直方向。
(4)LargeChange屬性:用來獲取或設(shè)置一個(gè)值,該值指示當(dāng)滑塊長距離移動(dòng)時(shí)應(yīng)為Value屬性中加上或減去的值。
(5)SmallChange屬性:用來獲取或設(shè)置當(dāng)滑塊短距離移動(dòng)時(shí)對Value屬性進(jìn)行增減的值。
(6)Value屬性:用來獲取或設(shè)置滑塊在跟蹤條控件上的當(dāng)前位置的值。
(7)TickFrequency屬性:用來獲取或設(shè)置一個(gè)值,該值指定控件上繪制的刻度之間的增量。
(8)TickStyle 屬性:用來獲取或設(shè)置一個(gè)值,該值指示如何顯示跟蹤條上的刻度線。

TrackBar控件的常用事件是ValueChanged,該事件在TrackBar控件的Value屬性值改變時(shí)發(fā)生。

16、HScrollBar 控件和 VScrollBar控件的使用

Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹

滾動(dòng)條(ScrollBar)是大部分Windows應(yīng)用程序中都具有的控件,是 Windows界面的一種常見元素,通常分為水平滾動(dòng)條(HscrollBar)和垂直滾動(dòng)條(VscrollBar)。HScrollBar在工具箱中的圖標(biāo)是,VScrollBar控件在工具箱中的圖標(biāo)是。這兩個(gè)控件主要用于在應(yīng)用程序或控件中水平或垂直滾動(dòng),以方便在較長的列表中或大量信息中轉(zhuǎn)移。
1、常用屬性:
(1)Minimum和 Maximum屬性:與TrackBar控件的同名屬性基本相同。
(2)Value屬性:用于設(shè)置或返回滑塊在滾動(dòng)條中所處的位置,其默認(rèn)值為0。當(dāng)滑塊的位置值為最小值時(shí),滑塊移到水平滾動(dòng)條的最左端位置,或移到垂直滾動(dòng)條的頂端位置。
當(dāng)滑塊的位置值為最大值時(shí),滑塊移到水平滾動(dòng)條的最右端位置或垂直滾動(dòng)條的底端位置。
(3)SmallChange和LargeChange屬性:這兩個(gè)屬性主要用于調(diào)整滑塊移動(dòng)的距離。其中 SmallChange屬性用于控制當(dāng)鼠標(biāo)單擊滾動(dòng)條兩邊的箭頭時(shí),滑塊滾動(dòng)的值,即 Value屬性增加或減小的值。而LargeChange屬性則控制當(dāng)用鼠標(biāo)直接單擊滾動(dòng)條時(shí)滑塊滾動(dòng)的值。當(dāng)
用戶按下PageUp鍵或PageDown鍵或者在滑塊的任何一邊單擊滾動(dòng)條軌跡時(shí),Value屬性將按照 LargeChange屬性中設(shè)置的值進(jìn)行增加或減小。
2、常用事件:
(1)Scroll事件:該事件在用戶通過鼠標(biāo)或鍵盤移動(dòng)滑塊后發(fā)生。
(2)ValueChanged事件:該事件在滾動(dòng)條控件的Value屬性值改變時(shí)發(fā)生。
滾動(dòng)條的使用方法與TrackBar控件基本一致,此處不再贅述。

17、OpenFileDialog 控件

OpenFileDialog控件又稱打開文件對話框,主要用來彈出Windows中標(biāo)準(zhǔn)的【打開文件】對話框。
OpenFileDialog控件的常用屬性如下。
(1)Title屬性:用來獲取或設(shè)置對話框標(biāo)題,默認(rèn)值為空字符串(“”)。如果標(biāo)題為空字符串,則系統(tǒng)將使用默認(rèn)標(biāo)題: “打開” 。
(2)Filter屬性:用來獲取或設(shè)置當(dāng)前文件名篩選器字符串,該字符串決定對話框的【另存為文件類型】或【文件類型】框中出現(xiàn)的選擇內(nèi)容。對于每個(gè)篩選選項(xiàng),篩選器字符串都包含篩選器說明、垂直線條(|)和篩選器模式。不同篩選選項(xiàng)的字符串由垂直線條隔開,例如: “文本文件(.txt)|.txt|所有文件(.)|.” 。
還可以通過用分號(hào)來分隔各種文件類型,可以將多個(gè)篩選器模式添加到篩選器中,例如: “圖像文件(.BMP;.JPG;.GIF)|.BMP;.JPG; .GIF|所有文件(.)|.” 。
(3)FilterIndex屬性:用來獲取或設(shè)置文件對話框中當(dāng)前選定篩選器的索引。第一個(gè)篩選器的索引為1,默認(rèn)值為1。
(4)FileName 屬性:用來獲取在打開文件對話框中選定的文件名的字符串。文件名既包含文件路徑也包含擴(kuò)展名。如果未選定文件,該屬性將返回空字符串(“”)。
(5)InitialDirectory屬性:用來獲取或設(shè)置文件對話框顯示的初始目錄,默認(rèn)值為空字符串(“”)。

(6)ShowReadOnly屬性:用來獲取或設(shè)置一個(gè)值,該值指示對話框是否包含只讀復(fù)選框。如果對話框包含只讀復(fù)選框,則屬性值為true,否則屬性值為false。默認(rèn)值為false。
(7)ReadOnlyChecked屬性:用來獲取或設(shè)置一個(gè)值,該值指示是否選定只讀復(fù)選框。如果選中了只讀復(fù)選框,則屬性值為true,反之,屬性值為false。默認(rèn)值為false。
(8)Multiselect屬性:用來獲取或設(shè)置一個(gè)值,該值指示對話框是否允許選擇多個(gè)文件。如果對話框允許同時(shí)選定多個(gè)文件,則該屬性值為true,反之,屬性值為false。默認(rèn)值為false。
(9)FileNames屬性:用來獲取對話框中所有選定文件的文件名。每個(gè)文件名都既包含文件路徑又包含文件擴(kuò)展名。如果未選定文件,該方法將返回空數(shù)組。
(10)RestoreDirectory屬性:用來獲取或設(shè)置一個(gè)值,該值指示對話框在關(guān)閉前是否還原當(dāng)前目錄。假設(shè)用戶在搜索文件的過程中更改了目錄,且該屬性值為 true,那么,對話框會(huì)將當(dāng)前目錄還原為初始值,若該屬性值為 false,則不還原成初始值。默認(rèn)值為 false。OpenFileDialog 控件的常用方法有兩個(gè):OpenFile 和 ShowDialog方法,本節(jié)只介紹ShowDialog方法,該方法的作用是顯示通用對話框,其一般調(diào)用形式如下:
通用對話框?qū)ο竺?ShowDialog();
通用對話框運(yùn)行時(shí),如果單擊對話框中的【確定】按鈕,則返回值為 DialogResult.OK;否則返回值為DialogResult.Cancel。其他對話框控件均具有ShowDialog方法,以后不再重復(fù)介紹。

18、SaveFileDialog 控件

SaveFileDialog 控件又稱保存文件對話框,主要用來彈出 Windows 中標(biāo)準(zhǔn)的【保存文件】對話框。
SaveFileDialog 控件也具有 FileName、Filter、FilterIndex、InitialDirectory、Title 等屬性,這些屬性的作用與 OpenFileDialog對話框控件基本一致,此處不再贅述。
需注意的是:上述兩個(gè)對話框只返回要打開或保存的文件名,并沒有真正提供打開或保存文件的功能,程序員必須自己編寫文件打開或保存程序,才能真正實(shí)現(xiàn)文件的打開和保存功能。

19、FontDialog 控件

FontDialog控件又稱字體對話框,主要用來彈出Windows中標(biāo)準(zhǔn)的【字體】對話框。該控件在工具箱中的圖標(biāo)為 。字體對話框的作用是顯示當(dāng)前安裝在系統(tǒng)中的字體列表,供用戶進(jìn)行選擇。下面介紹字體對話框的主要屬性。
(1)Font屬性:該屬性是字體對話框的最重要屬性,通過它可以設(shè)定或獲取字體信息。
(2)Color屬性:用來設(shè)定或獲取字符的顏色。
(3)MaxSize屬性:用來獲取或設(shè)置用戶可選擇的最大磅值。
(4)MinSize屬性:用來獲取或設(shè)置用戶可選擇的最小磅值。192VisualC#.NET應(yīng)用教程
(5)ShowColor屬性:用來獲取或設(shè)置一個(gè)值,該值指示對話框是否顯示顏色選擇框。如果對話框顯示顏色選擇框,屬性值為true,反之,屬性值為false。默認(rèn)值為false。
(6)ShowEffects 屬性:用來獲取或設(shè)置一個(gè)值,該值指示對話框是否包含允許用戶指定刪除線、下劃線和文本顏色選項(xiàng)的控件。如果對話框包含設(shè)置刪除線、下劃線和文本顏色選項(xiàng)的控件,屬性值為 true,反之,屬性值為false。默認(rèn)值為true。

20、ColorDialog控件

ColorDialog 控件又稱顏色對話框,主要用來彈出 Windows 中標(biāo)準(zhǔn)的【顏色】對話框。該控件在工具箱中的圖標(biāo)為 。顏色對話框的作用是供用戶選擇一種顏色,并用 Color 屬性記錄用戶選擇的顏色值。下面介紹顏色對話框的主要屬性。
(1)AllowFullOpen屬性:用來獲取或設(shè)置一個(gè)值,該值指示用戶是否可以使用該對話框定義自定義顏色。如果允許用戶自定義顏色,屬性值為true,否則屬性值為false。默認(rèn)值為true。
(2)FullOpen 屬性:用來獲取或設(shè)置一個(gè)值,該值指示用于創(chuàng)建自定義顏色的控件在對話框打開時(shí)是否可見。值為true時(shí)可見,值為 false時(shí)不可見。
(3)AnyColor 屬性:用來獲取或設(shè)置一個(gè)值,該值指示對話框是否顯示基本顏色集中可用的所有顏色。值為 true時(shí),顯示所有顏色,否則不顯示所有顏色。
(4)Color屬性:用來獲取或設(shè)置用戶選定的顏色。

21、PrintDialog控件和 PrintDocument 控件

使用PrintDialog控件可以顯示W(wǎng)indows標(biāo)準(zhǔn)的【打印】對話框,在該對話框中用戶可以選擇打印機(jī)、選擇要打印的頁及頁碼范圍等。需要注意的是:該對話框并不負(fù)責(zé)具體的打印任務(wù),要想在應(yīng)用程序中控制打印內(nèi)容必須使用 PrintDocument 控件。關(guān)于這兩個(gè)控件的詳細(xì)使用方法讀者可參閱相關(guān)資料或VisualC#的幫助文件。

22、用戶自定義對話框

除了可以使用Windows自帶的標(biāo)準(zhǔn)對話框外,用戶還可以把自己設(shè)計(jì)的窗體定義成對話框。使用自定義對
話框有以下幾個(gè)要點(diǎn)。
(1)將窗體的FormBorderStyle屬性值設(shè)置為FixedDialog。
(2)根據(jù)需要向窗體上添加控件。
(3)使用窗體的ShowDialog方法顯示窗體,即顯示出對話框。

23、MainMenu菜單控件

Windows 的菜單系統(tǒng)是圖形用戶界面(GUI)的重要組成之一,在 VisualC#中使用 MainMenu 控件可以很方便地實(shí)現(xiàn)Windows的菜單,MainMenu控件在工具箱中的圖標(biāo)為 。
1.菜單的結(jié)構(gòu)
圖 10-9和圖10-10 是典型的菜單結(jié)構(gòu)。其中有文字的單個(gè)命令稱菜單項(xiàng),頂層菜單項(xiàng)是橫著排列的,單擊某個(gè)菜單項(xiàng)后彈出的稱為菜單或子菜單,它們均包含若干個(gè)菜單項(xiàng),菜單項(xiàng)其實(shí)是 MenuItem 類的一個(gè)對象。菜單項(xiàng)有的是變灰顯示的,表示該菜單項(xiàng)當(dāng)前是被禁止使用的。有的菜單項(xiàng)的提示文字中有帶下劃線的字母,該字母稱為熱鍵(或訪問鍵),若是頂層菜單,可通過按“ALT+熱鍵”打開該菜單,若是某個(gè)子菜單中的一個(gè)選項(xiàng),則在打開子菜單后直接按熱鍵就會(huì)執(zhí)行相應(yīng)的菜單命令。有的菜單項(xiàng)后面有一個(gè)按鍵或組合鍵,稱快捷鍵,在不打開菜單的情況下按快捷鍵,將執(zhí)行相應(yīng)的命令。在圖 10-9 中,【保存文件】菜單項(xiàng)是加粗顯示的,該菜單項(xiàng)稱為默認(rèn)項(xiàng)。圖10-9的【另存為】和【退出】之間有一個(gè)灰色的線條,該線條稱為分隔線或分隔符。在圖 10-10 中菜單項(xiàng)【白色背景】前面有一個(gè)“√”號(hào),稱為選中標(biāo)記,菜單項(xiàng)加上選中標(biāo)記表示該菜單項(xiàng)代表的功能當(dāng)前正在起作用。

2.菜單項(xiàng)的常用屬性
(1)Text 屬性:用來獲取或設(shè)置一個(gè)值,通過該值指示菜單項(xiàng)標(biāo)題。當(dāng)使用 Text 屬性為菜單項(xiàng)指定標(biāo)題時(shí),還可以在字符前加一個(gè)“&”號(hào)來指定熱鍵(訪問鍵,即加下劃線的字母)。例如,若要將“File”中的“F”指定為訪問鍵,應(yīng)將菜單項(xiàng)的標(biāo)題指定為“&File” 。
(2)Checked屬性:用來獲取或設(shè)置一個(gè)值,通過該值指示選中標(biāo)記是否出現(xiàn)在菜單項(xiàng)文本的旁邊。如果要放置選中標(biāo)記在菜單項(xiàng)文本的旁邊,屬性值為true,否則屬性值為false。默認(rèn)值為false。
(3)DefaultItem 屬性:用來獲取或設(shè)置一個(gè)值,通過該值指示菜單項(xiàng)是否為默認(rèn)菜單項(xiàng)。值為 true 時(shí),是默認(rèn)菜單項(xiàng),值為 false時(shí),不是默認(rèn)菜單項(xiàng)。菜單的默認(rèn)菜單項(xiàng)以粗體的形式顯示。當(dāng)用戶雙擊包含默認(rèn)項(xiàng)的子菜單后,默認(rèn)項(xiàng)被選定,然后子菜單關(guān)閉。
(4)Enabled屬性:用來獲取或設(shè)置一個(gè)值,通過該值指示菜單項(xiàng)是否可用。值為true時(shí)表示可用,值為false表示當(dāng)前禁止使用。
(5)RadioCheck 屬性:用來獲取或設(shè)置一個(gè)值,通過該值指示選中的菜單項(xiàng)的左邊是顯示單選按鈕還是選中標(biāo)記。值為true時(shí)將顯示單選按鈕標(biāo)記,值為false時(shí)顯示選中標(biāo)記。
(6)Shortcut屬性:用來獲取或設(shè)置一個(gè)值,該值指示與菜單項(xiàng)相關(guān)聯(lián)的快捷鍵。
(7)ShowShortcut 屬性:用來獲取或設(shè)置一個(gè)值,該值指示與菜單項(xiàng)關(guān)聯(lián)的快捷鍵是否在菜單項(xiàng)標(biāo)題的旁邊顯示。如果快捷組合鍵在菜單項(xiàng)標(biāo)題的旁邊顯示,該屬性值為 true,如果不顯示快捷鍵,該屬性值為false。默認(rèn)值為true。
(8)MdiList屬性:用來獲取或設(shè)置一個(gè)值,通過該值指示是否用在關(guān)聯(lián)窗體內(nèi)顯示的多文檔界面(MDI)子窗口列表來填充菜單項(xiàng)。若要在該菜單項(xiàng)中顯示MDI子窗口列表,則設(shè)置該屬性值為true,否則設(shè)置該屬性的值為false。默認(rèn)值為false。
3.菜單項(xiàng)的常用事件
菜單項(xiàng)的常用事件主要有Click事件,該事件在用戶單擊菜單項(xiàng)時(shí)發(fā)生。

24、多窗體程序設(shè)計(jì)

Windows應(yīng)用程序很少只由一個(gè)窗體組成, 一般情況下一個(gè)應(yīng)用程序均擁有很多個(gè)窗體。
C#項(xiàng)目剛建立時(shí)只有一個(gè)名為Form1的窗體,要建立多窗體應(yīng)用程序應(yīng)首先為項(xiàng)目添加窗體,添加窗體的方法如下。
(1) 單擊工具欄上的按鈕 或執(zhí)行【項(xiàng)目】→【添加Windows窗體】命令,將會(huì)出現(xiàn)如圖 10-17 所示的【添加新項(xiàng)】對話框。
(2) 在該對話框的【模板】下面的列表框中 選中【W(wǎng)indows 窗體】圖標(biāo),在【名稱】文本框中輸入窗體名,然后單擊【打開】按鈕,即為應(yīng)用程序添加了一個(gè)窗體。

25、MDI 應(yīng)用程序設(shè)計(jì)

1.MDI應(yīng)用程序的概念
在前面的章節(jié)中,所創(chuàng)建的都是單文檔界面(SDI)應(yīng)用程序。這樣的程序(如記事本和畫圖程序)僅支持一次打開一個(gè)窗口或文檔。如果需要編輯多個(gè)文檔,必須創(chuàng)建SDI應(yīng)用程序的多個(gè)實(shí)例。而使用多文檔界面(MDI)程序(如Word和AdobePhotoshop)時(shí),用戶可以同時(shí)編輯多個(gè)文檔。MDI程序中的應(yīng)用程序窗口稱為父窗口,應(yīng)用程序內(nèi)部的窗口稱為子窗口。雖然 MDI應(yīng)用程序可以具有多個(gè)子窗口, 但是每個(gè)子窗口卻只能有一個(gè)父窗口。此外,處于活動(dòng)狀態(tài)的子窗口最大數(shù)目是 1。子窗口本身不能再成為父窗口,而且不能移動(dòng)到它們的父窗口區(qū)域之外。除此以外,子窗口的行為與任何其他窗口一樣(如可以關(guān)閉、最小化和調(diào)整大小等)。一個(gè)子窗口在功能上可能與父窗口的其他子窗口不同,例如,一個(gè)子窗口可能用于編輯圖像,另一個(gè)子窗口可能用于編輯文本,第 3 個(gè)子窗口可以使用圖形來顯示數(shù)據(jù),但是所有的窗口都屬于相同的MDI父窗口。圖 10-19 是一個(gè)典型的 MDI應(yīng)用程序。外面的窗口是應(yīng)用程序窗口,里面的兩個(gè)小窗口是 MDI子窗口。
2.與 MDI應(yīng)用程序設(shè)計(jì)有關(guān)的屬性、方法和事件
常用的MDI父窗體屬性如下。
(1)ActiveMdiChild屬性:該屬性用來表示當(dāng)前活動(dòng)的MDI子窗口,如果當(dāng)前沒有子窗口,則返回null。
(2)IsMdiContainer屬性:該屬性用來獲取或設(shè)置一個(gè)值,該值指示窗體是否為多文檔界面(MDI)子窗體的容器,即MDI父窗體。值為true時(shí),表示是父窗體,值為false時(shí),表示不是父窗體。
(3)MdiChildren屬性:該屬性以窗體數(shù)組形式返回MDI子窗體,每個(gè)數(shù)組元素對應(yīng)一個(gè) MDI子窗體。
常用的MDI子窗體的屬性有:
(1)IsMdiChild屬性:該屬性用來獲取一個(gè)值,該值指示該窗體是否為多文檔界面(MDI)的子窗體。值為 true時(shí),表示是子窗體,值為false時(shí),表示不是子窗體。
(2)MdiParent屬性:該屬性用來指定該子窗體的MDI父窗體。與MDI應(yīng)用程序設(shè)計(jì)有關(guān)的方法中,一般只使用父窗體的LayoutMdi方法,該方法的調(diào)用格式如下:
MDI父窗體名.LayoutMdi(Value);
該方法用來在MDI父窗體中排列MDI子窗體,以便導(dǎo)航和操作MDI子窗體。參數(shù)Value決定排列方式,取值有:MdiLayout.ArrangeIcons(所有 MDI 子窗體以圖標(biāo)的形式排列在 MDI 父窗體的工作區(qū)內(nèi))、MdiLayout.TileHorizontal (所有MDI子窗口均水平平鋪在MDI父窗體的工作區(qū)內(nèi))、 MdiLayout.TileVertical(所有 MDI 子窗口均垂直平鋪在 MDI 父窗體的工作區(qū)內(nèi))和 MdiLayout.Cascade(所有 MDI 子窗口均層疊在 MDI 父窗體的工作區(qū)內(nèi))。常用的 MDI 父窗體的事件是 MdiChildActivate,當(dāng)激活或關(guān)閉一個(gè) MDI子窗體時(shí)將發(fā)生該事件。
3.菜單合并
父窗體和子窗體可以使用不同的菜單,這些菜單會(huì)在選擇子窗體的時(shí)候合并。如果需要指定菜單的合并方式,程序員可以設(shè)置每個(gè)菜單項(xiàng)的MergeOrder屬性和MergeType屬性。

(1)MergeOrder屬性:用來確定當(dāng)兩個(gè)菜單合并時(shí)菜單項(xiàng)出現(xiàn)的順序,具有較低MergeOrder的菜單項(xiàng)會(huì)首先出現(xiàn)。
(2)MergeType屬性:當(dāng)合并的兩個(gè)菜單的某些菜單項(xiàng)的MergeOrder屬性值相等時(shí),使用該屬性可以控制這些菜單項(xiàng)的顯示方式。其取值及含義如表10-4所示。

26、鍵盤事件處理

鍵盤事件在用戶按下鍵盤上的鍵時(shí)發(fā)生,可分為兩類。第一類是KeyPress事件,當(dāng)按下的鍵表示的是一個(gè)ASCII 字符時(shí)就會(huì)觸發(fā)這類事件,可通過它的 KeyPressEventArgs 類型參數(shù)的屬性 KeyChar 來確定按下鍵的 ASCII 碼。使用 KeyPress 事件無法判斷是否按下了修改鍵(例如 Shift,Alt 和 Ctrl 鍵),為了判斷這些動(dòng)作, 就要處理KeyUp 或KeyDown事件, 這些事件組成了第二類鍵盤事件。 該類事件有一個(gè)KeyEventArgs類型的參數(shù),通過該參數(shù)可以測試是否按下了一些修改鍵、功能鍵等特殊按鍵信息。
1.KeyPressEventArgs類的主要屬性(KeyPress事件的一個(gè)參數(shù)類型)
(1)Handled屬性:用來獲取或設(shè)置一個(gè)值,該值指示是否處理過KeyPress事件。
(2)KeyChar屬性:用來獲取按下的鍵對應(yīng)的字符,通常是該鍵的ASCII碼。
2.KeyEventArgs類的主要屬性(KeyUp和 KeyDown事件的一個(gè)參數(shù))
(1)Alt屬性:用來獲取一個(gè)值,該值指示是否曾按下Alt鍵。
(2)Control屬性:用來獲取一個(gè)值,該值指示是否曾按下Ctrl鍵。
(3)Shift屬性:用來獲取一個(gè)值,該值指示是否曾按下Shift鍵。
(4)Handled屬性:用來獲取或設(shè)置一個(gè)值,該值指示是否處理過此事件。
(5)KeyCode屬性:以 Keys枚舉型值返回鍵盤鍵的鍵碼,該屬性不包含修改鍵(Alt、Control和 Shift鍵)信息,用于測試指定的鍵盤鍵。
(6)KeyData 屬性:以 Keys 枚舉類型值返回鍵盤鍵的鍵碼,并包含修改鍵信息,用于判斷關(guān)于按下鍵盤鍵的所有信息。
(7)KeyValue屬性:以整數(shù)形式返回鍵碼,而不是Keys枚舉類型值。用于獲得所按下鍵盤鍵的數(shù)字表示。
(8)Modifiers 屬性:以 Keys 枚舉類型值返回所有按下的修改鍵(Alt、Control 和 Shift 鍵),僅用于判斷修改鍵信息。

27、鼠標(biāo)事件處理

對鼠標(biāo)操作的處理是應(yīng)用程序的重要功能之一,在VisualC#中有一些與鼠標(biāo)操作相關(guān)的事件,利用它們可以方便地進(jìn)行與鼠標(biāo)有關(guān)的編程。
(1)MouseEnter事件:在鼠標(biāo)指針進(jìn)入控件時(shí)發(fā)生。
(2)MouseMove事件:在鼠標(biāo)指針移到控件上時(shí)發(fā)生。事件處理程序接收一個(gè)MouseEventArgs類型的參數(shù),該參數(shù)包含與此事件相關(guān)的數(shù)據(jù)。該參數(shù)的主要屬性及其含義如下。
Button屬性:用來獲取曾按下的是哪個(gè)鼠標(biāo)按鈕。該屬性是MouseButtons枚舉型的值,
取值及含義如下:Left(按下鼠標(biāo)左按鈕)、Middle(按下鼠標(biāo)中按鈕)、Right(鼠標(biāo)右按鈕)、None(沒
有按下鼠標(biāo)按鈕)、 XButton1 (按下了第一個(gè)XButton按鈕, 僅用于Microsoft智能鼠標(biāo)瀏覽器) 和XButton2(按下了第二個(gè)XButton按鈕,僅用于 Microsoft智能鼠標(biāo)瀏覽器)
Clicks屬性:用來獲取按下并釋放鼠標(biāo)按鈕的次數(shù)。
Delta屬性:用來獲取鼠標(biāo)輪已轉(zhuǎn)動(dòng)的制動(dòng)器數(shù)的有符號(hào)計(jì)數(shù)。制動(dòng)器是鼠標(biāo)輪的一個(gè)凹口。
X 屬性:用來獲取鼠標(biāo)所在位置的x坐標(biāo)。
Y 屬性:用來獲取鼠標(biāo)所在位置的y坐標(biāo)。
(3)MouseHover事件:當(dāng)鼠標(biāo)指針懸停在控件上時(shí)將發(fā)生該事件。
(4)MouseDown事件:當(dāng)鼠標(biāo)指針位于控件上并按下鼠標(biāo)鍵時(shí)將發(fā)生該事件。事件處理程序也接收一個(gè)MouseEventArgs類型的參數(shù)。
(5)MouseWheel事件:在移動(dòng)鼠標(biāo)輪并且控件有焦點(diǎn)時(shí)將發(fā)生該事件。該事件的事件處理程序接收一個(gè)MouseEventArgs類型的參數(shù)
(6)MouseUp 事件:當(dāng)鼠標(biāo)指針在控件上并釋放鼠標(biāo)鍵時(shí)將發(fā)生該事件。事件處理程序也接收一個(gè)MouseEventArgs類型的參數(shù)。
(7)MouseLeave事件:在鼠標(biāo)指針離開控件時(shí)將發(fā)生該事件。

28、月歷 MonthCalendar

Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹
常用屬性:

屬性 說明
FirstDayOfWeek 設(shè)置日歷中每一周第一個(gè)顯示的日期
MaxDate 可以選擇的最后一個(gè)日期
MaxSelectionCount 可以一次選擇的最多天數(shù)
MinDate 可以選擇的第一個(gè)日期
MonthlyBoldedDates 日歷中以粗體顯示的一個(gè)日期數(shù)組
SelectionEnd 用戶選擇的最后一個(gè)日期
SelectionRange 用戶選擇的日期
SelectionStart 用戶選擇的第一個(gè)日期

常用事件:
DateChanged:當(dāng)選中了日歷中的某個(gè)日期時(shí),會(huì)產(chǎn)生這個(gè)事件

29、日歷 DateTimePicker

Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹
常用屬性:

屬性 說明
CalendarForeColor 設(shè)置日歷文本顏色
CalendarMonthBackground 設(shè)置日歷的背景色
CustomFormat 設(shè)置用戶選項(xiàng)的定制格式字符串
Format 設(shè)置用戶選項(xiàng)的日期或時(shí)間格式
MaxDate 可以選擇的最大日期和時(shí)間
MinDate 可以選擇的最小日期和時(shí)間
ShowCheckBox 表明是否應(yīng)在所選日期和時(shí)間的左邊顯示復(fù)選框
ShowUpDown 表示控件是否應(yīng)顯示向上和向下的按鈕
Value 用戶選擇的數(shù)據(jù)

常用事件:
ValueChanged:Value屬性發(fā)生變化時(shí)產(chǎn)生這個(gè)事件

30、超鏈接 LinkLabel

Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹
常用屬性:

屬性 說明
ActiveLinkColor 指定用戶單擊鏈接時(shí)的顏色
LinkArea 指定LinkLabel中哪一部分的文本為鏈接
LinkBehavior 指定鏈接的行為,比如當(dāng)鼠標(biāo)放置其上時(shí)鏈接如何出現(xiàn)
LinkColor 指定單擊前鏈接的顏色
LinkVisited 如果為true,則鏈接表現(xiàn)為已被訪問過
Text 指定這個(gè)控件的文本
UseMnemonic 如果為true,則在Text屬性中的&字符充當(dāng)快捷鍵
VisitedLinkColor 指定訪問過的鏈接的顏色

常用事件:
LinkClicked:單擊鏈接時(shí)產(chǎn)生,配合Process類的Start方法

private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
    linkLabel1.LinkVisited = true;
    //可以執(zhí)行本機(jī)文件
    //System.Diagnostics.Process.Start(@"D:\Program Files\test.exe");
    System.Diagnostics.Process.Start(@"http://www.baidu.com");
}

31、TabControl 控件

TabContrl控件可創(chuàng)建標(biāo)簽化窗口
Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹
常用屬性:

屬性 說明
ImageList 指定在標(biāo)簽上顯示的圖像
ItemSize 指定標(biāo)簽的大小
Multiline 表明是否能將標(biāo)簽顯示成多行
SelectedIndex 所選TabPage的索引
SelectedTab 被選中的TabPage
TabCount 返回標(biāo)簽頁面的數(shù)量
TabPages 返回TabControl內(nèi)的TabPages集合

常用事件:
SelectedIndexChanged:當(dāng)SelectedIndex變化時(shí)產(chǎn)生

32、TreeView 控件和TreeNode 控件

TreeView控件用樹顯示節(jié)點(diǎn)層次。
例如:頂級(jí)目錄是根(C:),C盤下的每個(gè)子目錄都是子節(jié)點(diǎn),而每個(gè)子目錄又都有自己的子節(jié)點(diǎn)
TreeView屬性和方法:

屬性 說明
CheckBoxes 表示節(jié)點(diǎn)旁邊是否出現(xiàn)復(fù)選框
ImageList 指定一個(gè)包含節(jié)點(diǎn)圖標(biāo)的ImageList對象。ImageList對象是一個(gè)包含Image對象的集合
Nodes 將控件中的TreeNode集合作為TreeNodeCollection返回
SelectedNode 被選中的節(jié)點(diǎn)

常用事件:
AfterSelect:當(dāng)所選節(jié)點(diǎn)發(fā)生變化時(shí)產(chǎn)生

TreeNode屬性和方法:文章來源地址http://www.zghlxwxcb.cn/news/detail-489823.html

TreeNode屬性 說明
Checked 表示是否選中了TreeNode
FirstNode 指定Nodes集合眾的第一個(gè)節(jié)點(diǎn)
FullPath 節(jié)點(diǎn)從數(shù)根開始的路徑
ImageIndex 當(dāng)去選一個(gè)節(jié)點(diǎn)時(shí),指定TreeView的ImageList中要顯示的圖像的索引
LastNode 指定Nodes集合中的最后一個(gè)節(jié)點(diǎn)
NextNode 下一個(gè)同胞節(jié)點(diǎn)
Nodes 包含在當(dāng)前節(jié)點(diǎn)中的TreeNode集合
PrevNode 前一個(gè)同胞節(jié)點(diǎn)
SelectedImageIndex 當(dāng)選擇一個(gè)節(jié)點(diǎn)時(shí),指定TreeView的ImageList中要顯示的圖像的索引
Text 指定TreeNode的文本
TreeNode方法 說明
Collapse 加載時(shí)縮合節(jié)點(diǎn)
Expand 展開節(jié)點(diǎn)
ExpandAll 展開節(jié)點(diǎn)的所有子節(jié)點(diǎn)
GetNodeCount 返回子節(jié)點(diǎn)個(gè)數(shù)

到了這里,關(guān)于Visual Studio C# WinForm開發(fā)入門(3):各種控件介紹的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【C#】【winform】Microsoft Visual Studio Installer Project 打包應(yīng)用程序全部過程

    【C#】【winform】Microsoft Visual Studio Installer Project 打包應(yīng)用程序全部過程

    提示:只針對擴(kuò)展包來完成打包的工作過程。 在做完C#和winform的開發(fā),完成之后,需要做一些打包的工具,在這個(gè)過程中遇到一些問題,所以記錄下我的操作過程和遇到的異常情況。 支持快速打包的插件擴(kuò)展 在擴(kuò)展—搜搜 Microsoft Visual Studio Installer Project,安裝,然后等待下

    2024年02月07日
    瀏覽(31)
  • C# winform使用scottplot圖表控件快速入門設(shè)置XY軸縮放

    C# winform使用scottplot圖表控件快速入門設(shè)置XY軸縮放

    Hello大家好我是開箱測評(píng)小汪,在C#項(xiàng)目開發(fā)中使用圖表控件,有時(shí)候我們希望放大或縮小圖表控件來看數(shù)據(jù)細(xì)節(jié)和整體數(shù)據(jù)情況。所有本期課程將帶介紹Scottplot圖表控件如何來實(shí)現(xiàn)這個(gè)功能。 ? 本期課程的要達(dá)到的目的: 設(shè)置鼠標(biāo)管輪縮放進(jìn)行縮放 設(shè)置鼠標(biāo)右鍵長按進(jìn)行拖

    2024年02月15日
    瀏覽(66)
  • 快速入門:【c# 之 Winform開發(fā)】

    快速入門:【c# 之 Winform開發(fā)】

    在 winform 中,很多屬性和方法的單詞首字母都是要大寫的,例如: Main() 方法。 在 WinForms 中,事件函數(shù)通常具有兩個(gè)參數(shù): object sender 和 EventArgs e 。 object sender :這個(gè)參數(shù)表示引發(fā)事件的對象。當(dāng)事件被觸發(fā)時(shí),它指向引發(fā)事件的控件或?qū)ο?。通過sender參數(shù),你可以獲得對觸發(fā)

    2024年02月03日
    瀏覽(21)
  • 【C# 基礎(chǔ)精講】C# 開發(fā)環(huán)境搭建(Visual Studio等)

    【C# 基礎(chǔ)精講】C# 開發(fā)環(huán)境搭建(Visual Studio等)

    安裝C#開發(fā)環(huán)境是開始學(xué)習(xí)和使用C#編程的第一步。目前,最常用的C#開發(fā)環(huán)境是Microsoft Visual Studio,它是一套強(qiáng)大的集成開發(fā)環(huán)境(IDE),提供了豐富的工具和功能,使開發(fā)C#應(yīng)用程序變得更加便捷。以下是安裝Visual Studio的簡單步驟: 步驟1:下載Visual Studio 訪問Microsoft官方網(wǎng)

    2024年02月14日
    瀏覽(51)
  • C#winform軟件實(shí)現(xiàn)一次編譯,跨平臺(tái)windows和linux兼容運(yùn)行,兼容Visual Studio原生界面Form表單開發(fā)

    C#winform軟件實(shí)現(xiàn)一次編譯,跨平臺(tái)windows和linux兼容運(yùn)行,兼容Visual Studio原生界面Form表單開發(fā)

    微軟的.net core開發(fā)工具,目前來看,winform界面軟件還沒有打算要支持linux系統(tǒng)下運(yùn)行的意思,要想讓c#桌面軟件在linux系統(tǒng)上運(yùn)行,開發(fā)起來還比較麻煩。微軟只讓c#的控制臺(tái)軟件支持在linux運(yùn)行。 我想到的一個(gè)方案是自定義封裝軟件的System.Windows.Forms組件,把支持windows和lin

    2024年02月08日
    瀏覽(29)
  • 使用DevExpress22.X(Patch)控件庫在VisualStudio2022使用C#進(jìn)行Winform、WPF應(yīng)用的開發(fā),看這一篇就夠了!

    使用DevExpress22.X(Patch)控件庫在VisualStudio2022使用C#進(jìn)行Winform、WPF應(yīng)用的開發(fā),看這一篇就夠了!

    ????????寫在開頭,Dev Express是個(gè)十分強(qiáng)大的控件庫(下文簡稱Dev),但礙于其高昂的使用費(fèi)用,“出于學(xué)習(xí)目的”,我們一般使用的都是Patch版本(在版權(quán)意識(shí)日趨加強(qiáng)的當(dāng)下,不要提那兩個(gè)字,現(xiàn)在加上那些字,百度都搜不出內(nèi)容)。 ? ? ? ? 最重要的 Patch資源 (包括

    2024年02月09日
    瀏覽(85)
  • Visual Studio 2019 C# 上位機(jī)入門(2):寫一個(gè)簡單的串口助手

    Visual Studio 2019 C# 上位機(jī)入門(2):寫一個(gè)簡單的串口助手

    本文記錄一下用Visual Studio 2019 C# 寫一個(gè)簡單的串口助手的過程,由于沒有先從小處學(xué)習(xí),而是直接找相關(guān)資料就開始做,免不了很多奇怪的問題花了一些時(shí)間,基于此情況,我將盡可能整理出更多細(xì)節(jié),尤其是我遇到的坑,以便和我一樣的新手小白上手。后續(xù)我還準(zhǔn)備單獨(dú)分

    2024年02月08日
    瀏覽(23)
  • Visual Studio 2019 C# 上位機(jī)入門(1):如何創(chuàng)建工程編寫一個(gè)簡單應(yīng)用

    Visual Studio 2019 C# 上位機(jī)入門(1):如何創(chuàng)建工程編寫一個(gè)簡單應(yīng)用

    Visual Studio 2019下載安裝步驟可以看:https://blog.csdn.net/weixin_44788542/article/details/114271126 這里不贅述,默認(rèn)電腦上已經(jīng)安裝好了。 1、打開安裝好的Visual Studio后,選擇創(chuàng)建新項(xiàng)目。 2、找到選擇C#下面的Windows 窗體應(yīng)用,然后下一步起名和文件存放位置 如果找不到Windows 窗體應(yīng)用,

    2024年02月05日
    瀏覽(27)
  • C# WinForm —— 05 控件簡介

    簡介 窗體中用于輸入或操作的對象,有自己的屬性、方法、事件 特征 可視化,與用戶進(jìn)行交互,屬性,方法,事件,可供開發(fā)人員使用,可發(fā)布和重用 控件開發(fā) 復(fù)合控件:各種控件組合起來,形成一個(gè)新的控件 擴(kuò)展控件:現(xiàn)有控件上派生出一個(gè)新的控件,為原有框架增加

    2024年04月12日
    瀏覽(21)
  • C# WinForm —— 06 常用控件

    公共控件 功能 Label 標(biāo)簽,UI上的提示性文字 TextBox 文本框 RadioButton 單選按鈕 CheckBox 復(fù)選框 ComboBox 下拉框,只能選擇一個(gè)選項(xiàng) CheckedListBox 帶復(fù)選框的列表項(xiàng),可以選擇多個(gè)選項(xiàng)的下拉菜單 DateTimePicker 日期時(shí)間選擇控件 ListBox 列表框 ListView 以五種不同視圖顯示項(xiàng)的集合 Mask

    2024年04月10日
    瀏覽(18)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包