第10章Windows窗體高級(jí)控件的使用_第1頁(yè)
第10章Windows窗體高級(jí)控件的使用_第2頁(yè)
第10章Windows窗體高級(jí)控件的使用_第3頁(yè)
第10章Windows窗體高級(jí)控件的使用_第4頁(yè)
第10章Windows窗體高級(jí)控件的使用_第5頁(yè)
已閱讀5頁(yè),還剩55頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第10章Windows窗體高級(jí)控件的使用本章要點(diǎn)選項(xiàng)卡控件菜單控件工具欄與狀態(tài)欄控件窗體控件對(duì)話(huà)框控件在Windows應(yīng)用程序中,選項(xiàng)卡用于將相關(guān)的控件集中在一起,放在一個(gè)頁(yè)面中選項(xiàng)卡控件用于顯示多個(gè)選項(xiàng)卡,其中每個(gè)選項(xiàng)卡均可包含圖片和其他控件選項(xiàng)卡相當(dāng)于另一個(gè)窗體,可以容納其他控件10.1選項(xiàng)卡控件10.1.1選項(xiàng)卡控件的常用屬性屬性說(shuō)明TabPagesTabControl中的選項(xiàng)卡頁(yè)的集合MultiLine指定是否可以顯示多行選項(xiàng)卡。如果可以顯示多行選項(xiàng)卡,該值應(yīng)為T(mén)rue,否則為False。默認(rèn)值為FalseSelectedIndex當(dāng)前所選選項(xiàng)卡頁(yè)的索引值。該屬性的值為當(dāng)前所選選項(xiàng)卡頁(yè)的基于0的索引。默認(rèn)值為-1,如果未選定選項(xiàng)卡頁(yè),則為同一值ShowToolTips指定在鼠標(biāo)移至選項(xiàng)卡時(shí),是否應(yīng)顯示該選項(xiàng)卡的工具提示。如果對(duì)帶有工具提示的選項(xiàng)卡顯示工具提示,該值應(yīng)為T(mén)rue,否則為FalseTabCount檢索選項(xiàng)卡控件中選項(xiàng)卡的數(shù)目事件說(shuō)明SelectedIndexChanged更改SelectedIndex屬性值時(shí),將觸發(fā)該事件10.1.2選項(xiàng)卡控件的常用事件10.1.3選項(xiàng)卡控件的操作實(shí)例10.1.3選項(xiàng)卡控件的操作實(shí)例

privatevoidbutton3_Click(objectsender,EventArgse)//“下一步”{tabControl1.SelectedIndex+=1;}privatevoidbutton1_Click(objectsender,EventArgse)//“上一步”{tabControl1.SelectedIndex-=1;}privatevoidbutton2_Click(objectsender,EventArgse)//“下一步”{tabControl1.SelectedIndex+=1;}privatevoidbutton4_Click(objectsender,EventArgse)//“上一步”{tabControl1.SelectedIndex-=1;}privatevoidbutton7_Click(objectsender,EventArgse)//“上一步”{tabControl1.SelectedIndex-=1;}privatevoidbutton6_Click(objectsender,EventArgse)//“確定”{if(DialogResult.Yes==MessageBox.Show("真的確定嗎?","提示",MessageBoxButtons.YesNo,MessageBoxIcon.Question))this.Close();}10.1.3選項(xiàng)卡控件的操作實(shí)例privatevoidbutton5_Click(objectsender,EventArgse)//”完成”{tabControl1.SelectedIndex+=1;stringname=textBox1.Text;stringsex;if(radioButton1.Checked)sex=radioButton1.Text;elsesex=radioButton2.Text;stringphone=textBox2.Text;stringfathername=textBox3.Text;stringmathername=textBox4.Text;stringhomepone=textBox5.Text;stringdepartment=comboBox1.Text;textBox6.Text="姓名:"+name+"\r\n\r\n"+"性別:"+sex+"\r\n\r\n"+"電話(huà):"+phone+"\r\n\r\n"+"父親姓名:"+fathername+"\r\n\r\n"+"母親姓名:"+mathername+"\r\n\r\n"+"家庭電話(huà):"+homepone+"\r\n\r\n"+"所屬院系:"+department;}菜單提供了將命令分組的一致方法用戶(hù)易于訪問(wèn)支持使用訪問(wèn)鍵啟用鍵盤(pán)快捷方式一個(gè)菜單可以帶有若干子菜單菜單是程序中顯示一個(gè)選項(xiàng)列表的圖形元素10.2菜單和菜單組件

MenuStrip控件主要用于生成所在窗體的主菜單。在設(shè)計(jì)窗體中添加該控件后,會(huì)在窗體上顯示一個(gè)菜單欄,可以直接在此菜單欄上編輯各主菜單項(xiàng)及對(duì)應(yīng)的子菜單項(xiàng)。10.2.1

MenuStrip控件編輯各菜單項(xiàng)內(nèi)容時(shí),可以用符號(hào)“&”指定該菜單項(xiàng)的組合鍵,讓其后的字母帶下劃線顯示,如編輯菜單項(xiàng)“文件(&F)”,則會(huì)顯示為“文件(F)”,意思是可以直接用“Alt+F”組合鍵實(shí)現(xiàn)與單擊該菜單項(xiàng)相同的功能;用符號(hào)“-”可以在菜單中顯示各項(xiàng)之間的分隔條。10.2.1

MenuStrip控件(1)AllowItemReorder:當(dāng)程序運(yùn)行時(shí),按下<Alt>鍵是否允許改變各菜單項(xiàng)的左右排列順序。(2)Dock:指示菜單欄在窗體中出現(xiàn)的位置,默認(rèn)值為T(mén)op。(3)Items:用于編輯菜單欄上顯示的各菜單項(xiàng)。單擊[Items]屬性后[…]按鈕,彈出[項(xiàng)集合編輯器]對(duì)話(huà)框。MenuStrip控件的基本屬性(1)Checked:指示菜單項(xiàng)是否被選中。默認(rèn)值為false。(2)CheckOnClick:決定單擊菜單項(xiàng)時(shí)是否使其選中狀態(tài)發(fā)生改變。(3)CheckState:指示菜單項(xiàng)的狀態(tài)。(4)DisplayStyle:指示菜單項(xiàng)上的顯示內(nèi)容。共有4個(gè)屬性值:None、Text、Image和ImageAndText,分別表示不顯示任何內(nèi)容、僅顯示文本、僅顯示圖標(biāo)、同時(shí)顯示文本和圖標(biāo)。默認(rèn)值為ImageAndText。(5)DropDownItems:?jiǎn)螕粼搶傩院蟮腫…]按鈕,調(diào)出[項(xiàng)集合編輯器]對(duì)話(huà)框,以此編輯該菜單項(xiàng)對(duì)應(yīng)得子菜單中的各菜單項(xiàng)。MenuItem菜單項(xiàng)的基本屬性(6)Image:指定在該菜單項(xiàng)上顯示的圖標(biāo)。(7)ShortcutScaling:為菜單項(xiàng)指定的快捷鍵。(8)ShowShortCutKeys:指示是否在菜單項(xiàng)上顯示快捷鍵。MenuItem菜單項(xiàng)的基本屬性ItemClicked事件:當(dāng)單擊菜單欄上各主菜單項(xiàng)時(shí)觸發(fā)的操作。MenuStrip控件的常用事件Click事件:?jiǎn)螕舨藛雾?xiàng)時(shí)觸發(fā)。MenuItem菜單項(xiàng)的常用事件菜單控件的操作實(shí)例

privatevoid新建ToolStripMenuItem_Click(objectsender,EventArgse){textBox1.Visible=true;textBox1.Text="微軟公司對(duì)C#的定義是:“C#是一種類(lèi)型安全的、現(xiàn)代的、簡(jiǎn)單的,由c和c++衍生出來(lái)的面向?qū)ο蟮木幊陶Z(yǔ)言,它是牢牢根植于C和C++語(yǔ)言之上的,并可立即被C和C++開(kāi)發(fā)人員所熟悉。C#的目的就是綜合VisualBasic的高生產(chǎn)率和C++的行動(dòng)力?!?;}privatevoid退出ToolStripMenuItem_Click(objectsender,EventArgse){textBox1.Clear();textBox1.Visible=false;}privatevoid宋體ToolStripMenuItem1_Click(objectsender,EventArgse){textBox1.Font=newFont("宋體",textBox1.Font.Size,textBox1.Font.Style);}privatevoid隸書(shū)ToolStripMenuItem1_Click(objectsender,EventArgse){textBox1.Font=newFont("隸書(shū)",textBox1.Font.Size,textBox1.Font.Style);}

privatevoid楷體ToolStripMenuItem_Click(objectsender,EventArgse){textBox1.Font=newFont("楷體_GB2312",textBox1.Font.Size,textBox1.Font.Style);}privatevoid一號(hào)ToolStripMenuItem_Click(objectsender,EventArgse){textBox1.Font=newFont(textBox1.Font.Name,26.25f,textBox1.Font.Style);}privatevoid三號(hào)ToolStripMenuItem_Click(objectsender,EventArgse){textBox1.Font=newFont(textBox1.Font.Name,15.75f,textBox1.Font.Style);}privatevoid五號(hào)ToolStripMenuItem_Click(objectsender,EventArgse){textBox1.Font=newFont(textBox1.Font.Name,9f,textBox1.Font.Style);}

privatevoid加粗ToolStripMenuItem_Click(objectsender,EventArgse){if(加粗ToolStripMenuItem.Checked){textBox1.Font=newFont(textBox1.Font.Name,textBox1.Font.Size,textBox1.Font.Style|FontStyle.Bold);}else{textBox1.Font=newFont(textBox1.Font.Name,textBox1.Font.Size,textBox1.Font.Style&~FontStyle.Bold);}}privatevoid傾斜ToolStripMenuItem_Click(objectsender,EventArgse){if(傾斜ToolStripMenuItem.Checked){textBox1.Font=newFont(textBox1.Font.Name,textBox1.Font.Size,textBox1.Font.Style|FontStyle.Italic);}else{textBox1.Font=newFont(textBox1.Font.Name,textBox1.Font.Size,textBox1.Font.Style&~FontStyle.Italic);}}privatevoid下劃線ToolStripMenuItem_Click(objectsender,EventArgse){if(下劃線ToolStripMenuItem.Checked){textBox1.Font=newFont(textBox1.Font.Name,textBox1.Font.Size,textBox1.Font.Style|FontStyle.Underline);}else{textBox1.Font=newFont(textBox1.Font.Name,textBox1.Font.Size,textBox1.Font.Style&~FontStyle.Underline);}}

ContextMenuStrip控件的功能是制作右鍵快捷菜單。注意:該控件是用于為其他控件服務(wù)的,不能單獨(dú)使用。

當(dāng)向窗體中添加一個(gè)ContextMenuStrip控件,會(huì)在窗體頂端出現(xiàn)與MenuStrip控件相似的菜單欄,但是不能在菜單欄上添加任何菜單項(xiàng),只能在子菜單中編輯各菜單項(xiàng)。編輯完成的ContextMenuStrip控件需要在窗體或相關(guān)控件的[ContextMenuStrip]屬性中與其建立關(guān)聯(lián),才可以在程序運(yùn)行時(shí)用鼠標(biāo)右鍵單擊對(duì)應(yīng)控件,彈出該快捷菜單。10.2.2

ContextMenuStrip控件Items:用于編輯快捷菜單上的各菜單項(xiàng)。其編輯方式與MenuStrip控件的菜單項(xiàng)編輯相似,都是調(diào)用[項(xiàng)集合編輯器]對(duì)話(huà)框來(lái)生成菜單項(xiàng)的。ContextMenuStrip控件的基本屬性(1)ItemClicked事件:快捷菜單中的任何一個(gè)菜單項(xiàng)被單擊時(shí)觸發(fā)的操作。ContextMenuStrip控件的基本事件ContextMenuStrip控件的操作實(shí)例10.3工具欄控件工具欄實(shí)際上可以看成是菜單項(xiàng)的快捷方式,工具欄上的每一個(gè)工具項(xiàng)都應(yīng)有對(duì)應(yīng)的菜單項(xiàng),在工具箱中雙擊ToolStrip控件,可在窗體上添加一個(gè)ToolStrip控件??梢栽诠ぞ邫谥刑砑影粹o、文本、左側(cè)標(biāo)準(zhǔn)按鈕和右側(cè)下拉按鈕的組合、下拉菜單、垂直線或水平線、文本框和進(jìn)度條。10.3工具欄控件ToolStrip控件及其派生類(lèi)被設(shè)計(jì)成一個(gè)靈活的可擴(kuò)展系統(tǒng),以顯示工具欄、狀態(tài)和菜單項(xiàng)。控件名稱(chēng)說(shuō)明ToolStripButton可以創(chuàng)建一個(gè)支持文本和圖像的工具欄按鈕ToolStripLabel創(chuàng)建一個(gè)標(biāo)簽ToolStripSplitButton左側(cè)標(biāo)準(zhǔn)按鈕和右側(cè)下拉按鈕的組合ToolStripDropDownButton可以創(chuàng)建一個(gè)下拉列表ToolStripComboBox可以創(chuàng)建一個(gè)組合框ToolStripSeparator直線,可以對(duì)菜單或ToolStrip上的相關(guān)項(xiàng)進(jìn)行分組ToolStripTextBox文本框,用戶(hù)可以在此輸入文本ToolStripProgressBarWindows進(jìn)度欄工具欄控件使用實(shí)例10.4狀態(tài)欄控件狀態(tài)欄一般位于windows窗體的底部,主要用來(lái)顯示窗體的狀態(tài)信息。10.4狀態(tài)欄控件可以為狀態(tài)欄添加StatusLabel、ProgressBar、DropDownButton、SplitButton。名稱(chēng)說(shuō)明ToolStripStatusLabelStatusStrip控件中的一個(gè)面板ToolStripDropDownButton用戶(hù)可以從中選擇單個(gè)項(xiàng)ToolStripSplitButton標(biāo)準(zhǔn)按鈕和下拉菜單的一個(gè)兩部分控件ToolStripProgressBar顯示進(jìn)程的完成狀態(tài)圖標(biāo)系統(tǒng)按鈕標(biāo)題欄控件10.5窗體10.5.1窗體的屬性

屬性說(shuō)明ControlBox確定窗體是否有“控件/系統(tǒng)”菜單欄FormBorderStyle指定窗體的邊框樣式。HelpButton確定窗體的標(biāo)題欄上是否有“幫助”按鈕。注:如果顯示最大化或最小化框,則忽略HelpButton屬性的值WindowState確定窗體的初始可視狀態(tài)Fixed3D:固定的三維邊框。

FixedDialog:固定的對(duì)話(huà)框樣式的粗邊框。

FixedSingle:固定的單行邊框。

FixedToolWindow:不可調(diào)整大小的工具窗口邊框。None:無(wú)邊框。

Sizable:可調(diào)整大小的邊框。

SizableToolWindow:可調(diào)整大小的工具窗口邊框。10.5.2窗體的方法和事件

方法說(shuō)明Show方法該方法的作用是讓窗體顯示出來(lái),且該窗體是無(wú)模式窗體。Hide方法該方法的作用是把窗體隱藏出來(lái)。Close方法該方法的作用是關(guān)閉窗體。ShowDialog方法該方法的作用是將窗體顯示為模式對(duì)話(huà)框。事件說(shuō)明Load事件該事件發(fā)生于Form窗體的加載時(shí)候。窗體和對(duì)話(huà)框要么是有模式的,要么是無(wú)模式的?!澳J健贝绑w或?qū)υ?huà)框必須關(guān)閉或隱藏,然后才能繼續(xù)使用應(yīng)用程序的其余部分。無(wú)模式窗體或?qū)υ?huà)框允許在不同窗口之間自由切換。10.5.2窗體間數(shù)據(jù)傳遞一個(gè)稍微復(fù)雜一點(diǎn)的程序一般都有二個(gè)或者更多的窗體。有時(shí)在程序設(shè)計(jì)中,數(shù)據(jù)不僅要在同一個(gè)窗體中傳遞,還要在窗體間傳遞,這種傳遞是主窗體與從窗體之間數(shù)據(jù)的互相傳遞。[被調(diào)用的窗體類(lèi)][窗體實(shí)例]=new[被調(diào)用的窗體類(lèi)]();[窗體實(shí)例].Show();privatevoidbutton1_Click(objectsender,EventArgse){Form2myform2=newForm2();myform2.Show();}一個(gè)應(yīng)用程序可能有多個(gè)窗體,若要在當(dāng)前窗體中顯示另一窗體,可采用如下方法:

1、顯示另外一個(gè)窗體功能描述:主窗體能夠?qū)崟r(shí)的向從窗體傳送數(shù)據(jù),表現(xiàn)為當(dāng)更改主窗體中的文本框中的內(nèi)容時(shí),從窗體中定義的一個(gè)文本框能夠顯示出主窗體中文本框中的內(nèi)容。實(shí)現(xiàn)思路:把從窗體看成是主窗體的一個(gè)實(shí)例,加入到從窗體中的組件,可以看成是從窗體中定義的一個(gè)個(gè)變量,由于從窗體中加入的組件的組件缺省定義類(lèi)型是Private(私有的),所以要想訪問(wèn)這些組件,必須改變?yōu)镻ublic(共有的)。2、向另外一個(gè)窗體傳送數(shù)據(jù)實(shí)現(xiàn)舉例:現(xiàn)在有兩個(gè)窗體:主窗體、從窗體,在主窗體中有兩個(gè)文本框控件,要求在文本框控件中輸入相應(yīng)的內(nèi)容后,點(diǎn)擊“確定”按鈕,從窗體顯示出來(lái),并在從窗體的文本框中將主窗體中用戶(hù)輸入的信息顯示出來(lái)。2、向另外一個(gè)窗體傳送數(shù)據(jù)實(shí)現(xiàn)步驟:(1)創(chuàng)建一個(gè)VisualC#項(xiàng)目文件(2)在【Form1.cs】窗口中,添加以下組件,并執(zhí)行相應(yīng)的操作:二個(gè)TextBox組件二個(gè)Label組件一個(gè)Button組件(3)選擇菜單【項(xiàng)目】|【添加Windows窗體】后,彈出【添加新項(xiàng)】對(duì)話(huà)框。在此對(duì)話(huà)框中的【名稱(chēng)(N):】文本框中輸入【Form2】后,單擊【添加】按鈕,則在該項(xiàng)目中添加了一個(gè)新的窗體,名稱(chēng)為【Form2】。(4)把VisualStudio.Net的當(dāng)前窗口切換到【Form2.cs(設(shè)計(jì))】窗口,并從【工具箱】中的【W(wǎng)indows窗體】選項(xiàng)卡中拖入下列組件到【Form2.cs(設(shè)計(jì))】窗體中,并執(zhí)行相應(yīng)操作:

一個(gè)TextBox組件,用以顯示主窗體發(fā)送來(lái)的數(shù)據(jù)2、向另外一個(gè)窗體傳送數(shù)據(jù)(5)把從窗體看成是主窗體的一個(gè)實(shí)例,下面代碼是創(chuàng)建一個(gè)Form2類(lèi)的實(shí)例myform2,即從窗體:

privateForm2myform2

;

注:此行代碼應(yīng)在主窗體(Form1)的類(lèi)定義中添加(6)由于在主窗體中點(diǎn)擊“確定”按鈕后,需要對(duì)從窗體中文本框進(jìn)行設(shè)置,所以要修改Form2.cs文件中TextBox組件的定義類(lèi)型,把缺省定義為“private”類(lèi)型修改為“public”類(lèi)型,修改后的TextBox組件在Form2.cs中的定義語(yǔ)句如下:

publicSystem.Windows.Forms.TextBoxtextBox1;

注:此行代碼應(yīng)在從窗體(Form2)的類(lèi)定義中修改(7)在主窗體的Button1的Click事件中填寫(xiě)以下代碼:

myform2=newForm2();myform2.Show();myform2.textBox1.Text=“姓名:”+this.textBox1.Text+“\r\n”+“學(xué)號(hào):"+textBox2.Text;2、向另外一個(gè)窗體傳送數(shù)據(jù)基于C#的Windows應(yīng)用程序以窗體為基礎(chǔ)。C#中窗體可分為單文檔窗體和多文檔窗體兩類(lèi)。單文檔應(yīng)用程序中所有的窗體都是平等的,窗體之間不存在層次關(guān)系。多文檔應(yīng)用程序(MDI)包含一個(gè)父窗口(也稱(chēng)為容器窗口)以及一個(gè)或多個(gè)子窗體。3、多文檔窗體(MDI)多文檔應(yīng)用程序的特點(diǎn)用戶(hù)一次可以打開(kāi)多個(gè)文檔,每個(gè)文檔對(duì)應(yīng)不同的窗體;容器窗體的菜單會(huì)自動(dòng)隨著當(dāng)前活動(dòng)窗體的子窗體的變化而變化;可以對(duì)子窗體進(jìn)行層疊、平鋪等各種操作;子窗體可以在MDI容器窗體區(qū)域內(nèi)定位、改變大小、最大化和最小化,當(dāng)最大化子窗體時(shí),它將占滿(mǎn)窗體的全部客戶(hù)區(qū);所有子窗體都共享容器窗體的同一個(gè)工具欄和菜單欄;子窗體的一個(gè)限制是它們只能在容器窗體的邊界內(nèi)顯示。Form窗體中與MDI應(yīng)用程序相關(guān)的屬性和方法:IsMdiContainer屬性:該屬性獲取和設(shè)置窗體是否作為一個(gè)MDI主窗體(容器窗體)。MdiParent屬性:獲取和設(shè)置此窗體的當(dāng)前多文檔界面(MDI)父窗體,利用此屬性可以將一個(gè)普通窗體定義為一個(gè)MDI容器窗體的子窗體,形成包含關(guān)系。LayoutMdi方法:在MDI父窗體內(nèi)排列多文檔界面(MDI)子窗體,以便更易于導(dǎo)航和操作MDI子窗體。MDI子窗體可以在MDI父窗體內(nèi)水平和垂直平鋪、層疊或作為圖標(biāo),其值為Mdilayout枚舉值之一。3、多文檔窗體(MDI)多文檔窗體(MDI)舉例多文檔窗體(MDI)舉例

privatevoid加載窗體ToolStripMenuItem_Click(objectsender,EventArgse){Form2frm2=newForm2();frm2.MdiParent=this;frm2.Show();Form3frm3=newForm3();frm3.MdiParent=this;frm3.Show();Form4frm4=newForm4();frm4.MdiParent=this;frm4.Show();}privatevoid水平平鋪ToolStripMenuItem_Click(objectsender,EventArgse){LayoutMdi(MdiLayout.TileHorizontal);}privatevoid垂直平鋪ToolStripMenuItem_Click(objectsender,EventArgse){LayoutMdi(MdiLayout.TileVertical);}privatevoid層疊排列ToolStripMenuItem_Click(objectsender,EventArgse){LayoutMdi(MdiLayout.Cascade);}10.6對(duì)話(huà)框

在Windows系統(tǒng)中,應(yīng)用程序如果需要用戶(hù)選擇一個(gè)文件或者文件夾,通常都會(huì)彈出一個(gè)選擇對(duì)話(huà)框。由于這些對(duì)話(huà)框的通用性,C#提供了對(duì)話(huà)框控件來(lái)快速創(chuàng)建對(duì)話(huà)框。常用的控件有打開(kāi)文件對(duì)話(huà)框、存儲(chǔ)文件對(duì)話(huà)框、瀏覽文件對(duì)話(huà)框等。

打開(kāi)文件對(duì)話(huà)框控件(OpenFileDialog)是一個(gè)預(yù)先定義的對(duì)話(huà)框類(lèi),包括顯示樣式和方法等。它與Windows中常見(jiàn)的“打開(kāi)文件”對(duì)話(huà)框相同。在Windows應(yīng)用程序中可將該組件用作簡(jiǎn)單的文件選擇方案,快速創(chuàng)建用戶(hù)所熟悉的應(yīng)用程序。

可使用ShowDialog方法在運(yùn)行時(shí)顯示該對(duì)話(huà)框。

注意:使用OpenFileDialog控件,只能獲取要打開(kāi)的文件路徑,而文件的打開(kāi)邏輯必須由程序員編寫(xiě)。10.6.1打開(kāi)文件對(duì)話(huà)框控件(OpenFileDialog)

OpenFileDialog控件基本屬性屬性說(shuō)明InitialDirectory對(duì)話(huà)框的初始目錄Filter要在對(duì)話(huà)框中顯示的文件篩選器,例如,"文本文件(*.txt)|*.txt|所有文件(*.*)||*.*"FilterIndex在對(duì)話(huà)框中選擇的文件篩選器的索引,如果選第一項(xiàng)就設(shè)為1RestoreDirectory控制對(duì)話(huà)框在關(guān)閉之前是否恢復(fù)當(dāng)前目錄,注:該屬性?xún)H對(duì)SaveFileDialog有效;在OpenFileDialog上設(shè)置時(shí)不起任何作用。FileName獲取或設(shè)置一個(gè)字符串,其中包含在文件對(duì)話(huà)框中選定的文件的完整路徑。

Title將顯示在對(duì)話(huà)框標(biāo)題欄中的字符AddExtension獲取或設(shè)置一個(gè)值,該值指示如果用戶(hù)省略擴(kuò)展名,文件對(duì)話(huà)框是否自動(dòng)在文件名中添加擴(kuò)展名。

CheckPathExists在對(duì)話(huà)框返回之前,檢查指定路徑是否存在DefaultExt默認(rèn)擴(kuò)展名ShowHelp啟用"幫助"按鈕ValiDateNames控制對(duì)話(huà)框檢查文件名中是否不含有無(wú)效的字符或序列

創(chuàng)建一個(gè)窗體,在該窗體中添加一個(gè)TextBox、一個(gè)按鈕和一個(gè)OpenFileDialog。單擊按鈕可以激活OpenFileDialog并選擇文件,如果用戶(hù)在選擇對(duì)話(huà)框中確認(rèn)了選擇,則將選定的文件路徑顯示到TextBox中。

privatevoidbutton1_Click(objectsender,EventArgse){if(openFileDialog1.ShowDialog()==DialogResult.OK)textBox1.Text=openFileDialog1.FileName;}打開(kāi)文件對(duì)話(huà)框(OpenFileDialog)應(yīng)用實(shí)例存儲(chǔ)文件對(duì)話(huà)框(SaveFileDialog)與Windows的“保存文件”對(duì)話(huà)框相同。使用該控件可使用戶(hù)能夠選擇保存文件的路徑,但是使用SaveFileDialog控件時(shí),程序員必須編寫(xiě)文件保存邏輯。

與打開(kāi)文件對(duì)話(huà)框類(lèi)似,可使用ShowDialog方法在運(yùn)行時(shí)顯示該對(duì)話(huà)框。10.6.2存儲(chǔ)文件對(duì)話(huà)框(SaveFileDialog)

SaveFileDialog控件基本屬性屬性說(shuō)明Filter要在對(duì)話(huà)框中顯示的文件篩選器,例如,"文本文件(*.txt)|*.txt|所有文件(*.*)|*.*"FilterIndex在對(duì)話(huà)框中選擇的文件篩選器的索引,如果選第一項(xiàng)就設(shè)為1CheckPathExists在對(duì)話(huà)框返回之前,檢查指定路徑是否存在DefaultExt缺省擴(kuò)展名FileName第一個(gè)在對(duì)話(huà)框中顯示的文件或最后一個(gè)選取的文件InitialDirector對(duì)話(huà)框的初始目錄OverwritePrompt控制在將要在改寫(xiě)現(xiàn)在文件時(shí)是否提示用戶(hù),只有在ValidateNames為真值時(shí),才適用ShowHelp啟用"幫助"按鈕Title將顯示在對(duì)話(huà)框標(biāo)題欄中的字符ValidateNames控制對(duì)話(huà)框檢查文件名中是否不含有無(wú)效的字符或序列SaveFileDialog控件基本事件事件說(shuō)明FileOk當(dāng)用戶(hù)點(diǎn)擊"打開(kāi)"或"保存"按鈕時(shí)要處理的事件HelpRequest當(dāng)用戶(hù)點(diǎn)擊"幫助"按鈕時(shí)要處理的事件

創(chuàng)建一個(gè)窗體,在該窗體中添加一個(gè)TextBox、一個(gè)按鈕和一個(gè)SaveFileDialog。單擊“瀏覽”按鈕可以激活SaveFileDialog并選擇文件存儲(chǔ)路徑,如果用戶(hù)在選擇對(duì)話(huà)框中確認(rèn)了選擇,則將選定的文件路徑顯示到TextBox中。

privatevoidbutton1_Click(objectsender,EventArgse){if(saveFileDialog1.ShowDialog()==DialogResult.OK)textBox1.Text=saveFileDialog1.FileName;}存儲(chǔ)文件對(duì)話(huà)框(SaveFileDialog)應(yīng)用實(shí)例瀏覽文件夾對(duì)話(huà)框(FolderBrowserDialog)是用于瀏覽和選擇文件夾的模式對(duì)話(huà)框。

與前面兩個(gè)對(duì)話(huà)框一樣,使用ShowDialog方法可在運(yùn)行時(shí)顯示FolderBrowserDialog控件。

10.6.3瀏覽文件夾對(duì)話(huà)框(FolderBrowserDialog)

創(chuàng)建一個(gè)窗體,在該窗體中添加一個(gè)TextBox、一個(gè)按鈕和一個(gè)FolderBrowserDialog。單擊“瀏覽”按鈕可以激活FolderBrowserDialog并選擇文件夾路徑,如果用戶(hù)在選擇對(duì)話(huà)框中確認(rèn)了選擇,則將選定的文件路徑顯示到TextBox中。

privatevoidbutton3_Click(objectsender,E

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論