【Vegas原创】将treeview父结点的链接改为折叠事件
生活随笔
收集整理的這篇文章主要介紹了
【Vegas原创】将treeview父结点的链接改为折叠事件
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
詳細的Hashtable方法treeview遍歷請參閱:
http://www.cnblogs.com/vegaslee/archive/2008/04/17/1158321.html
現主要分享如何將父結點的鏈接改為折疊事件.
看一下treeview頁面的客戶端源文件,可以發現可折疊的圖片事件:TreeView_ToggleNode(...):
href="javascript:TreeView_ToggleNode(TreeView1_Data,1,TreeView1n1,'?',TreeView1n1Nodes)">
<img?src="/ass/WebResource.axd?d=r0O26jMIZhZAgGcswf2b2tbV9agiSKO716_OUUGC4hI1&t=633468101971007218"?
alt="折疊?社團申請"?style="border-width:0;"?/>
</a>
這回了解了吧?只要在后臺,將圖片后面的超鏈接加上這個js腳本就可以了。
代碼:
????{
????????DataTable?dtregion?=?GetTreeTable();
????????Hashtable?httree?=?new?Hashtable();
????????foreach?(DataRow?myrow?in?dtregion.Rows)
????????{
????????????TreeNode?newnode?=?new?TreeNode();
????????????newnode.Value?=?myrow["ID"].ToString();
????????????newnode.Text?=?myrow["TableName"].ToString();
????????????newnode.Target?=?myrow["Target"].ToString();
????????????newnode.NavigateUrl?=?myrow["url"].ToString();
????????????newnode.ImageToolTip?=?myrow["ParentID"].ToString();
????????????newnode.Expanded?=?bool.Parse(myrow["expanded"].ToString());
????????????httree.Add(newnode.Value,?newnode);
????????}
???????
????????foreach?(DataRow?treerow?in?dtregion.Rows)
????????{
????????????TreeNode?newnode?=?(TreeNode)httree[treerow["ID"].ToString()];
????????????TreeNode?parentnode?=?(TreeNode)httree[newnode.ImageToolTip];
?????????
????????????if?(parentnode?!=?null)
????????????{
????????????????parentnode.ChildNodes.Add(newnode);
????????????}
????????????else
????????????{
????????????????this.TreeView1.Nodes.Add(newnode);
????????????}
?
????????}
????????????AddToggle(this.TreeView1.Nodes[0]);
????}
?
????private?int?totalCount=0;????private?void?AddToggle(TreeNode?rootNode)
????{
????????int?nodeCount?=?0;
????????//如果是父結點,加折疊事件
????????if?(rootNode.ChildNodes.Count?>?0)
????????{
????????????int?id?=?totalCount;
????????????string?para2?=?"TreeView1n"?+?id.ToString();
????????????string?para3?=?"TreeView1n"?+?id.ToString()?+?"Nodes";
????????????rootNode.NavigateUrl?=?"javascript:TreeView_ToggleNode(TreeView1_Data,"?+?id.ToString()?+?","?+?para2?+?",'?',"?+?para3?+?")";
????????}
????????//方法
????????while?(rootNode.ChildNodes.Count?>?nodeCount)
????????{
????????????totalCount++;
????????????AddToggle(rootNode.ChildNodes[nodeCount]);
????????????nodeCount++;
????????}
????}
?
轉載于:https://www.cnblogs.com/amadeuslee/archive/2008/07/15/3744487.html
總結
以上是生活随笔為你收集整理的【Vegas原创】将treeview父结点的链接改为折叠事件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ADO.NET与XML的结合
- 下一篇: LumaQQ.NET操作指令制作(3)