VS2005 TreeView的checkBox的父子節(jié)點(diǎn)級(jí)聯(lián)狀態(tài)

VS2005 TreeView的checkBox的父子節(jié)點(diǎn)級(jí)聯(lián)狀態(tài)

ID:40575545

大?。?4.51 KB

頁(yè)數(shù):3頁(yè)

時(shí)間:2019-08-04

VS2005 TreeView的checkBox的父子節(jié)點(diǎn)級(jí)聯(lián)狀態(tài)_第1頁(yè)
VS2005 TreeView的checkBox的父子節(jié)點(diǎn)級(jí)聯(lián)狀態(tài)_第2頁(yè)
VS2005 TreeView的checkBox的父子節(jié)點(diǎn)級(jí)聯(lián)狀態(tài)_第3頁(yè)
資源描述:

《VS2005 TreeView的checkBox的父子節(jié)點(diǎn)級(jí)聯(lián)狀態(tài)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。

1、在正在做一個(gè)小項(xiàng)目,用的是vs2005,要用到TreeView來(lái)管理一些分級(jí)數(shù)據(jù),并能允許同時(shí)選中多個(gè)節(jié)點(diǎn),因此需要用到TreeView的ShowCheckBox屬性,當(dāng)我用到的時(shí)候才發(fā)現(xiàn),在選中復(fù)選框時(shí)并不會(huì)引起回發(fā)事件,這時(shí)我就犯愁了,該怎么辦呢,從網(wǎng)上查了好多資料,發(fā)現(xiàn)有不少是用javascript來(lái)實(shí)現(xiàn)的TreeView的父子節(jié)點(diǎn)級(jí)聯(lián)狀態(tài)的,但是這些方法都不太適合VS2005的TreeView,于是我繼續(xù)查閱,發(fā)現(xiàn)了一個(gè)比較適合VS2005的方法,下面這段話就是從一篇文章(作者是veryhappy(wx.net))

2、里摘錄過(guò)來(lái)的:【大家會(huì)在ASP.NET2.0使用TreeView控件時(shí)發(fā)現(xiàn)帶有CheckBox控件的TreeNode對(duì)象(TreeView節(jié)點(diǎn)),選擇CheckBox無(wú)法回發(fā)頁(yè)面。在MSDN中對(duì)于TreeView.TreeNodeCheckChanged事件有一段備注:“當(dāng)TreeView控件的復(fù)選框在兩次向服務(wù)器發(fā)送之間更改狀態(tài)時(shí),會(huì)引發(fā)TreeNodeCheckChanged事件。這使您可以提供一個(gè)這樣的事件處理方法,即每次發(fā)生此事件時(shí)執(zhí)行一個(gè)自定義例程(如更新數(shù)據(jù)庫(kù)或顯示的內(nèi)容)。盡管TreeNodeCheckCha

3、nged事件在回發(fā)時(shí)激發(fā),但更改復(fù)選框不會(huì)導(dǎo)致回發(fā)?!闭f(shuō)明框架本身并不能提供一個(gè)CheckBox回發(fā)的機(jī)制,為了實(shí)現(xiàn)集聯(lián)的選擇,筆者實(shí)現(xiàn)了一種使用JavaScript去回發(fā)的方法,變相的解決了這個(gè)問(wèn)題,盡管這樣的方法看上去很不美,但是一定程度上能解決我們的實(shí)際問(wèn)題。?大致思路,TreeNode對(duì)象輸出的是一個(gè)附和的HTML對(duì)象(包括TD,A,InputCheckBox……),本身沒(méi)有辦法增加客戶端腳本,所以為T(mén)reeView控件客戶端的onclick事件中加入腳本,腳本目的:對(duì)于引發(fā)事件的對(duì)象都做判斷,如果是InputCh

4、eckBox對(duì)象導(dǎo)致的事件,則直接調(diào)用__doPostBack來(lái)回發(fā)頁(yè)面?!?下面就是代碼,我做一些擴(kuò)展,可以實(shí)現(xiàn)點(diǎn)擊某一個(gè)復(fù)選框時(shí),設(shè)置它的父節(jié)點(diǎn)的狀態(tài)(如果它的父節(jié)點(diǎn)的所有子節(jié)點(diǎn)都沒(méi)選中,那么父節(jié)點(diǎn)被設(shè)置為不選中,否則設(shè)置為選中),設(shè)置它的所有子節(jié)點(diǎn)的狀態(tài)為它現(xiàn)在的選中狀態(tài)--------------------HTML頁(yè)面部分-----------------------????VS2005TreeViewCheckBox???

5、ipttype="text/javascript">????//點(diǎn)擊復(fù)選框時(shí)觸發(fā)事件????functionpostBackByObject()????{????????varo=window.event.srcElement;????????if(o.tagName=="INPUT"&&o.type=="checkbox")???????{??????????__doPostBack("","");??????}???}??????

6、v>???????????????????????????????????????

???---------------------cs頁(yè)面代碼--------------------protect

7、edvoidPage_Load(objectsender,EventArgse)???{???????if(!IsPostBack)??????{????????????//構(gòu)建TreeView????????????TreeNodeNode00=newTreeNode("00","00");?????????????TreeNodeNode01=newTreeNode("01","01");????????????TreeNodeNode0101=newTreeNode("0101","0101");??????????

8、TreeNodeNode0102=newTreeNode("0102","0102");???????????TreeNodeNode02=newTreeNode("02","02");???????????Node01.ChildNodes.Add(Node0101);???????????Node0

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫(huà)的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。
相關(guān)標(biāo)簽