C 樹形選單的相關實現

2022-02-09 06:02:46 字數 1480 閱讀 7230

在一些涉及到組織架構的場景, 比如erp, oa系統中我們經常會需要用到樹的結構。自己開發的時候也遇到了此使用場景,總結一下以後就可以直接拿來用了。

表設計如下:

**如下:

public class node

//節點id

public int parentid //節點父級id 如果為0則為根節點

public string nodename //節點名

public datetime writetime // 備註

}public class treenode

//節點id

public int parentid //節點父級id 如果為0則為根節點

public string nodename //節點名

public datetime writetime //寫入時間

public listchildren //子節點樹

}

/// /// 獲取當前系統的結構樹,可能多個樹

///

///

public listgetsysnodetree()

return treenodelist;}}

/// /// 獲取當前節點的節點樹

///

///

///

///

public listgetchildrentree(int curnodeid, listallnode)

return treelist;

}/// /// 通過curnodeid 獲取自己以及遞迴下的所有子node (用於刪除功能等)

///

///

///

///

public listgetrecurnodes(int curnodeid, listallnode)

listlist = new list();

if (allnode.firstordefault((m=>m.nodeid==curnodeid))!=null)

list.add(allnode.firstordefault((m => m.nodeid == curnodeid)));

listfirstlevelnodes = allnode.where(m => m.parentid == curnodeid).tolist();

foreach (var node in firstlevelnodes)

return list;

}

然後前端拿到資料,同樣遞迴展示就ok了。

動態實現樹形選單

樹形選單在開發軟體和 中經常用到,但是會遇到乙個問題,在 中當你點開的時候,由於頁面重新整理了,又合起來來了,這種問題是用iframe不會出現,但是在 中很少會用到框架,最近就碰到了這樣的問題,在網上找了很多js寫的樹形選單,我需要分四級,但是都沒找到合適的,亂七八糟的 都有,很頭疼,沒辦法,自己就...

MVC EF實現樹形選單

樹形選單,可以簡單的認為是標籤的巢狀,在html中的格式就是1 html 2 控制器利用,強型別 public actionresult productssorttree var productssortlist operatecontext.current.bllsession.iproducts...

通過lambda實現選單樹形結構

public list listwithtree sorted menu1,menu2 collect collectors.tolist return level1menus 遞迴查詢當前選單的子選單 param root param all return private list getchil...