ASP.NET真正有用的特性就是其可擴(kuò)充性。世界各地的開發(fā)人員都可以創(chuàng)建自己的自定義控件,這種自定義控件可以方便地在你自己的過程中進(jìn)行定義。其中,Internet Explorer Web Controls就是由微軟公司在標(biāo)準(zhǔn)的ASP.NET控件之外創(chuàng)建的這樣一個集合。 WINDOWS資源管理器中的驅(qū)動器和其下的文件及文件夾就是按照一種層次結(jié)構(gòu)來安排的,在這個控件集中有一個treeview控件為我們提供了一種按層次結(jié)構(gòu)顯示信息的方式。treeview控件包含了稱做“節(jié)點(diǎn)”(node)的一些條目的一個列表。每一個節(jié)點(diǎn)都可以有自己的節(jié)點(diǎn)集合,從而提供了一種更深層的數(shù)據(jù)定義。每個節(jié)點(diǎn)都可以被折疊起來,從而允許訪問者在一個treeview控件中查找,只看他所感興趣的那一級的數(shù)據(jù)。就像WINDOWS的資源管理器一樣。 本文將向你展示在ASP.NET頁面上定義一個TREEVIEW控件所需要做的工作。
TreeView控件演示
首先得明確一點(diǎn)就是測試的環(huán)境,只要環(huán)境正確,接下來的工作就很輕松了: 要測試該控件,得有一個叫IE WebControls的文件,具體的文件可以點(diǎn)擊這里下載或到微軟的網(wǎng)站去下載: 下載地址 按照他提供的方法進(jìn)行安裝。如有不清楚,請仔細(xì)看清楚他的readme文檔。
這里跳過下載方法,直接進(jìn)入環(huán)境的配置: IE Web Controls 1、雙擊安裝完成,默認(rèn):系統(tǒng)盤:\program files\IE Web Controls目錄下。 2、運(yùn)行“程序——Microsoft Visual Studio.NET 2003 ——Visual Studio.NET 工具 ——Microsoft Visual Studio.NET 2003 命令提示符”,進(jìn)入到IE Web Control 安裝目錄。 3、運(yùn)行build.bat 。 4、運(yùn)行xcopy /s /i .\build\Runtime (網(wǎng)站根目錄,默認(rèn)系統(tǒng)盤):\Inetpub\wwwroot\webctrl_client\1_0 /y 。
在”工具箱——web窗體“單擊右鍵,選擇“添加/移除項(xiàng)...”,在彈出對話框中選擇.net framwork 組件,單擊“瀏覽”,找到IE WebControl.dll 文件,添加上即可。
這樣就配置好了運(yùn)行環(huán)境。接下來進(jìn)行實(shí)操作階段了。
一、定義TreeView控件
代碼拷貝框
下面來解釋一下相應(yīng)代碼: autoselect = "false" 當(dāng)訪問者在TreeView控件中對節(jié)點(diǎn)進(jìn)行定位時,可以使用鍵盤上的箭頭來進(jìn)行這種定位.當(dāng)這個TreeView控件的autoselect屬性值設(shè)為TRUE時,可以使用鍵盤上的鍵來在treeview控件中滾動,以選聶一個條目.如果設(shè)置為false的話,則不允許這樣做. showplus="true" 當(dāng)一個treeview控件中的兩個節(jié)點(diǎn)收到一起的時候,你可以顯示一個加號(+),訪問者就知道這個節(jié)點(diǎn)可以展開.通過設(shè)置showplus屬性,你可以控制在這個位置是否顯示加號.如果這個屬性值設(shè)為true將使用加號;否則不使用. showlines="true" 在一個treeview控件中的兩個節(jié)點(diǎn)之間,可以顯示一些線條,通過設(shè)置showlines屬性,你可以控制是否顯示這樣的線條. Expandlevel=2 這個Treeview控件的Expandlevel屬性用來確定在默認(rèn)的情況下,沿著這個treeview控件的層次結(jié)構(gòu)展開的級別數(shù). <iecontrols:treeview> --------- </iecontrols:treeview> 在這個treeview控件定義的開始和結(jié)束標(biāo)記之間,可以定義一些treenode控件.
二、在treeview控件中使用treenode控件
如果你創(chuàng)建一個treeview控件的話,就需要在其中添加一些treenode控件來顯示一些信息.treenode控件顯示為treeview控件的層次結(jié)構(gòu)中的一個項(xiàng).treenode控件可以包含了treeview控件;或者,該控件本身也可以獨(dú)立存在.下面將向你展示如何在一個treeview控件中定義treenode控件. 本實(shí)例將顯示我喜歡的一些網(wǎng)站,其中每個網(wǎng)站可以是一個獨(dú)立的,或者在其下還有其它網(wǎng)站.這個treeview控件具有如下定義:
代碼拷貝框
[Ctrl+A 全部選擇 然后拷貝]
其中,定義了一個兩級的節(jié)點(diǎn).這個樹狀視圖中包含了"設(shè)計類站點(diǎn)"和"編程類站點(diǎn)"這二個大節(jié)點(diǎn),而"編程類站點(diǎn)"中又有兩個子節(jié)點(diǎn)"ASP編程"和"asp.net編程",其中每個子節(jié)點(diǎn)又都定義了其他的節(jié)點(diǎn). 要注意包含其他節(jié)點(diǎn)的treenode控件和獨(dú)立的treenode控件之間的差別.當(dāng)一個treenode控件中還有其它treenode控件時,這些子控件在其父控件的開始和結(jié)束標(biāo)記之間進(jìn)行定義: <iecontrols:treenode text=""> </iecontrols:treenode> 但對于一個獨(dú)立的treenode控件來說,其開始和結(jié)束標(biāo)記是自包含的: <iecontrols:treenode text="" /> 當(dāng)頁面首次加載時,這就是整個視圖節(jié)點(diǎn)的展開情況.由于這里的expandlevel屬性值設(shè)為2,因此將顯示到所有級別上的節(jié)點(diǎn).此外還要注意的是,由于showlines屬性和showplus屬性都為true,因此在所有顯示的這個視圖中,連接節(jié)點(diǎn)間的線條和連接框都顯示出來.
"我常去的站點(diǎn)"是當(dāng)前選中的節(jié)點(diǎn)項(xiàng).訪問者可以敲擊回車,或者在這個節(jié)點(diǎn)上點(diǎn)擊鼠標(biāo).然后,訪問者可以使用鍵盤上的箭頭來沿著樹狀視圖的層次結(jié)構(gòu)進(jìn)行定位。
在下一篇將介紹如何用實(shí)現(xiàn)導(dǎo)航功能。
出處:藍(lán)色理想
責(zé)任編輯:藍(lán)色
上一頁 下一頁 如何使用 .net 的TreeView控件 [2]
◎進(jìn)入論壇網(wǎng)絡(luò)編程版塊參加討論
|