C#搜索TreeView子節(jié)點(diǎn),保留父節(jié)點(diǎn)的方法
本文實(shí)例講述了C#搜索TreeView子節(jié)點(diǎn),保留父節(jié)點(diǎn)的方法。分享給大家供大家參考。具體如下:
C# 搜索TreeView子節(jié)點(diǎn)保留父節(jié)點(diǎn):
private void selectNodeByName(string name)
{
//重新生生成樹(shù),
InitTvCatalog();
//刪除節(jié)點(diǎn)
selectNode(tvCatalog.Nodes, name);
}
private void selectNode(TreeNodeCollection nodes, string name)
{
bool del = true;
for (int i = nodes.Count - 1; i >= 0; i--)
{
TreeNode node = nodes[i];
del = true;
if (node.Nodes.Count != 0)
{
selectNode(node.Nodes, name);
}
if (node.Text.StartsWith(name, StringComparison.OrdinalIgnoreCase))
{
del = false;
}
else
{
del = true;
}
if (del && node.Nodes.Count == 0)
{
node.Remove();
}
}
tvCatalog.ExpandAll();
}
WPF搜索TreeView子節(jié)點(diǎn)保留父節(jié)點(diǎn):
private void selectNodeByName(string name)
{
//重新生生成樹(shù),
method = new Common.PublicMethod();
method.TreeViewLoad();
//刪除節(jié)點(diǎn)
selectNode(RegimeSetting.Common.StaticVariables.treeView.Items, name);
method = null;
}
private void selectNode(ItemCollection nodes, string name)
{
bool del = true;
for (int i = nodes.Count - 1; i >= 0; i--)
{
TreeViewItem node = nodes[i] as TreeViewItem;
del = true;
if (node.Items.Count != 0)
{
selectNode(node.Items, name);
}
if (node.Header.ToString().StartsWith(name, StringComparison.OrdinalIgnoreCase))
{
del = false;
}
else
{
del = true;
}
if (del && node.Items.Count == 0)
{
if ((node.Parent as TreeViewItem) != null)
(node.Parent as TreeViewItem).Items.Remove(node);
else
(node.Parent as TreeView).Items.Remove(node);
}
}
(RegimeSetting.Common.StaticVariables.treeView.Items[0] as TreeViewItem).IsExpanded = true;
}
希望本文所述對(duì)大家的C#程序設(shè)計(jì)有所幫助。
- c# WPF中的TreeView使用詳解
- C# TreeView無(wú)限目錄樹(shù)實(shí)現(xiàn)方法
- C#自定義DataGridViewColumn顯示TreeView
- C#實(shí)現(xiàn)TreeView節(jié)點(diǎn)拖拽的方法
- C#中TreeView實(shí)現(xiàn)適合兩級(jí)節(jié)點(diǎn)的選中節(jié)點(diǎn)方法
- C#中TreeView節(jié)點(diǎn)的自定義繪制方法
- C#實(shí)現(xiàn)treeview綁定的方法
- c#的treeview綁定和獲取值的方法
- C# TreeView讀取數(shù)據(jù)庫(kù)簡(jiǎn)單實(shí)例
- c# TreeView添加右鍵快鍵菜單有兩種方法
- C# TreeView從數(shù)據(jù)庫(kù)綁定數(shù)據(jù)的示例
相關(guān)文章
asp.net core 使用 tensorflowjs實(shí)現(xiàn) face recognition的源代碼
tensorflowjs,在該項(xiàng)目中使用了ml5js這個(gè)封裝過(guò)的機(jī)器學(xué)習(xí)JavaScript類庫(kù), 使用起來(lái)更簡(jiǎn)單,本文給大家分享asp.net core 使用 tensorflowjs實(shí)現(xiàn) face recognition的源代碼,需要的朋友參考下吧2021-06-06
C#提高編程能力的50個(gè)要點(diǎn)總結(jié)
這篇文章主要介紹了C#提高編程能力的50個(gè)要點(diǎn),較為詳細(xì)的總結(jié)分析了C#程序設(shè)計(jì)中常見(jiàn)的注意事項(xiàng)與編程技巧,需要的朋友可以參考下2016-02-02
.NET實(shí)現(xiàn):將EXE設(shè)置開(kāi)機(jī)自動(dòng)啟動(dòng)
.NET實(shí)現(xiàn):將EXE設(shè)置開(kāi)機(jī)自動(dòng)啟動(dòng)的方法,需要的朋友可以參考一下2013-03-03
分享C#操作內(nèi)存讀寫方法的主要實(shí)現(xiàn)代碼
這篇文章介紹了C#操作內(nèi)存讀寫方法的主要實(shí)現(xiàn)代碼,下面讓我們來(lái)看看具體的實(shí)例實(shí)現(xiàn),有需要的朋友可以參考一下2013-08-08
C#?微信支付回調(diào)驗(yàn)簽處理的實(shí)現(xiàn)
在微信支付中,當(dāng)用戶支付成功后,微信會(huì)把相關(guān)支付結(jié)果和用戶信息發(fā)送給商戶,本文就詳細(xì)的介紹了C#?微信支付回調(diào)驗(yàn)簽處理,具有一定的參考價(jià)值,感興趣的可以了解一下2021-12-12
Entity Framework主從表數(shù)據(jù)加載方式
這篇文章介紹了Entity Framework主從表數(shù)據(jù)加載方式,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-06-06
C#利用LINQ實(shí)現(xiàn)一個(gè)文件拆分成多個(gè)文件的示例詳解
在日常開(kāi)發(fā)過(guò)程中,我們可能會(huì)遇到需要將一個(gè)大型文件拆分成多個(gè)小文件的需求,例如,為了便于傳輸、處理或備份,在C#中,我們可以利用LINQ技術(shù)來(lái)實(shí)現(xiàn)這一功能,下面我將詳細(xì)介紹如何使用LINQ拆分文件,需要的朋友可以參考下2024-08-08
基于C#實(shí)現(xiàn)Json轉(zhuǎn)Lua的操作指南
JSON(JavaScript Object Notation)是一種輕量級(jí)的數(shù)據(jù)交換格式,它的語(yǔ)法基于 JavaScript 對(duì)象表示法,簡(jiǎn)單、易讀,同時(shí)被許多編程語(yǔ)言支持,本文給大家介紹了如何基于C#實(shí)現(xiàn)Json轉(zhuǎn)Lua的操作指南,需要的朋友可以參考下2024-12-12

