生活随笔
收集整理的這篇文章主要介紹了
TreeView复选框选择逻辑判断
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
在mobile里使用TreeView控件時(shí),控件本身沒有提供節(jié)點(diǎn)復(fù)選框選擇判斷邏輯。
如選中父節(jié)點(diǎn),所有子節(jié)點(diǎn)全部選中;
取消父節(jié)點(diǎn),同時(shí)也取消所有子節(jié)點(diǎn);
或者選中所有子節(jié)點(diǎn),父節(jié)點(diǎn)自動(dòng)選中等等。
?
以下代碼能夠?qū)崿F(xiàn):
?
view plaincopy to clipboardprint?
///?<summary> ??///?復(fù)選框點(diǎn)擊事件 ???///?</summary> ??///?<param?name="sender"></param> ??///?<param?name="e"></param> ??private?void?tvPeople_AfterCheck(object?sender,?TreeViewEventArgs?e)??{??????if?(e.Action?!=?TreeViewAction.Unknown)??????{??????????if?(e.Node.Nodes.Count?>?0)??????????{??????????????this.CheckAllChildNodes(e.Node,?e.Node.Checked);??????????}??????????CheckParentNodes(e.Node);??????}??}????///?<summary> ??///?遞歸設(shè)置子節(jié)點(diǎn) ??///?</summary> ??///?<param?name="treeNode">節(jié)點(diǎn)對(duì)象</param> ??///?<param?name="nodeChecked">是否選擇</param> ??private?void?CheckAllChildNodes(TreeNode?treeNode,?bool?nodeChecked)??{??????foreach?(TreeNode?node?in?treeNode.Nodes)??????{??????????node.Checked?=?nodeChecked;??????????if?(node.Nodes.Count?>?0)??????????{??????????????this.CheckAllChildNodes(node,?nodeChecked);??????????}??????}??}????///?<summary> ??///?遞歸設(shè)置父節(jié)點(diǎn) ??///?</summary> ??///?<param?name="treeNode"></param> ??private?void?CheckParentNodes(TreeNode?treeNode)??{??????if?(null?!=?treeNode.Parent)??????{??????????int?count?=?treeNode.Parent.Nodes.Count;??????????if?(treeNode.Checked?==?true)??????????{??????????????for?(int?i?=?0;?i?<?count;?i++)??????????????{??????????????????if?(treeNode.Parent.Nodes[i].Checked?==?false)??????????????????????break;??????????????????if?(i?==?count?-?1)??????????????????????treeNode.Parent.Checked?=?true;??????????????}??????????}??????????else??????????{??????????????for?(int?i?=?0;?i?<?count;?i++)??????????????{??????????????????if?(treeNode.Parent.Nodes[i].Checked?==?true)??????????????????????break;??????????????????if?(i?==?count?-?1)??????????????????????treeNode.Parent.Checked?=?false;??????????????}??????????}??????????CheckParentNodes(treeNode.Parent);??????}??}??
轉(zhuǎn)載于:https://www.cnblogs.com/flyptt/archive/2012/01/09/2317542.html
總結(jié)
以上是生活随笔為你收集整理的TreeView复选框选择逻辑判断的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。