DevExpress獲取節(jié)點(diǎn)下可視區(qū)域子節(jié)點(diǎn)集合的實(shí)現(xiàn)方法
遞歸獲取節(jié)點(diǎn)是很多程序項(xiàng)目中常見(jiàn)的技巧。本文就以實(shí)例展示了DevExpress獲取節(jié)點(diǎn)下可視區(qū)域子節(jié)點(diǎn)集合的實(shí)現(xiàn)方法。分享給大家供參考之用,具體方法如下:
關(guān)鍵部分代碼如下:
/// <summary>
/// 向下遞歸TreeListNode節(jié)點(diǎn)
/// </summary>
/// <param name="node">需要向下遞歸的節(jié)點(diǎn)</param>
/// <param name="conditionHanlder">委托</param>
public static void DownRecursiveNode(this TreeListNode node, Action<TreeListNode> conditionHanlder)
{
foreach (TreeListNode _childNode in node.Nodes)
{
conditionHanlder(_childNode);
DownRecursiveNode(_childNode, conditionHanlder);
}
}
/// <summary>
/// 獲取節(jié)點(diǎn)下可視區(qū)域子節(jié)點(diǎn)集合
/// </summary>
/// <param name="node">需要獲取可見(jiàn)子節(jié)點(diǎn)的節(jié)點(diǎn)</param>
/// <param name="conditonHanlder">條件委托</param>
/// <returns>可見(jiàn)子節(jié)點(diǎn)集合</returns>
public static List<TreeListNode> GetVisibleChildNodes(this TreeListNode node, Predicate<TreeListNode> conditonHanlder)
{
List<TreeListNode> _visibleChildNodes = new List<TreeListNode>();
TreeList _tree = node.TreeList;
DownRecursiveNode(node, n =>
{
RowInfo _rowInfo = _tree.ViewInfo.RowsInfo[n];
if (_rowInfo != null)
{
if (conditonHanlder(n))
{
_visibleChildNodes.Add(n);
}
}
});
return _visibleChildNodes;
}
/// <summary>
/// 獲取節(jié)點(diǎn)下可視區(qū)域子節(jié)點(diǎn)集合
/// </summary>
/// <param name="node">需要獲取可見(jiàn)子節(jié)點(diǎn)的節(jié)點(diǎn)</param>
/// <returns>可見(jiàn)子節(jié)點(diǎn)集合</returns>
public static List<TreeListNode> GetVisibleChildNodes(this TreeListNode node)
{
return GetVisibleChildNodes(node, n => 1 == 1);
}
希望本文所述方法對(duì)大家的C#程序設(shè)計(jì)能有所幫助!
- DevExpress之餅狀圖突出(Explode)設(shè)置實(shí)例
- DevExpress之ChartControl實(shí)現(xiàn)餅狀圖百分比演示實(shí)例
- DevExpress之ChartControl創(chuàng)建Drill-Down樣式的Title實(shí)例
- DevExpress之ChartControl實(shí)現(xiàn)時(shí)間軸實(shí)例
- DevExpress之ChartControl的SeriesTemplate實(shí)例
- DevExpress之ChartControl實(shí)現(xiàn)柱狀圖演示實(shí)例
- DevExpress之SplashScreen用法實(shí)例
- DevExpress實(shí)現(xiàn)為TextEdit設(shè)置水印文字的方法
- DevExpress之ChartControl用法實(shí)例總結(jié)
- DevExpress之TreeList用法實(shí)例總結(jié)
- DevExpress設(shè)置餅狀圖的Lable位置實(shí)例
相關(guān)文章
C#如何實(shí)現(xiàn)dataGridView動(dòng)態(tài)綁定數(shù)據(jù)
這篇文章主要介紹了C#如何實(shí)現(xiàn)dataGridView動(dòng)態(tài)綁定數(shù)據(jù),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-04-04
C# Socket連接請(qǐng)求超時(shí)機(jī)制實(shí)現(xiàn)代碼分享
這篇文章主要介紹了C# Socket連接請(qǐng)求超時(shí)機(jī)制實(shí)現(xiàn),下面提供代碼分享,大家可以參考使用2013-12-12
C#用Topshelf創(chuàng)建Windows服務(wù)的步驟分享
這篇文章主要給大家介紹了關(guān)于C#如何利用Topshelf創(chuàng)建Windows服務(wù)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用C#具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05
C#微信公眾號(hào)開發(fā)之使用MessageHandler簡(jiǎn)化消息處理流程
這篇文章介紹了C#微信公眾號(hào)開發(fā)之使用MessageHandler簡(jiǎn)化消息處理流程,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-06-06
C#中LINQ的Select與SelectMany函數(shù)使用
這篇文章主要介紹了C#中LINQ的Select與SelectMany函數(shù)使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-08-08
Unity ScrollView實(shí)現(xiàn)無(wú)限循環(huán)效果
這篇文章主要為大家詳細(xì)介紹了Unity ScrollView實(shí)現(xiàn)無(wú)限循環(huán)效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-07-07
C#筆試題之同線程Lock語(yǔ)句遞歸不會(huì)死鎖
這篇文章主要介紹了C$ 筆試題之同線程Lock語(yǔ)句遞歸不會(huì)死鎖,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-02-02

