我想在默認情況下顯示樹視圖上的第一級兒童的所有子女。 然後展開所有點擊的孩子。如何擴展Treeview的第一級兒童
回答
嘗試:
foreach (TreeNode tn in treeView1.Nodes) {
tn.Expand();
}
在運行過程中添加節點,你可以檢查水平和擴大,如果需要的話:
private void ShoudAutoExpand(TreeNode tn) {
if (tn.Level == 0)
tn.Expand();
}
沒有NodeAdded
事件中,你可以掛接到檢查自動。您必須確定是否應該「默認」擴展節點。
更新:
從您的評論,好像你想有擴大所有0級節點,但隨後展開1級的所有子節點,當你展開。
嘗試訂閱到BeforeExpand事件與此代碼:
private void treeView1_BeforeExpand(object sender, TreeViewCancelEventArgs e) {
treeView1.BeforeExpand -= treeView1_BeforeExpand;
if (e.Node.Level == 1) {
e.Node.ExpandAll();
}
treeView1.BeforeExpand += treeView1_BeforeExpand;
}
,你可以嘗試這樣的事情..你將不得不改變的例子,以適應自己的代碼,因爲你忘了粘貼任何代碼,您有或企圖
private void addChildNode_Click(object sender, EventArgs e)
{
var childNode = textBox1.Text.Trim();
if (!string.IsNullOrEmpty(childNode)) {
TreeNode parentNode = treeView2.SelectedNode ?? treeView2.Nodes[0];
if (parentNode != null) {
parentNode.Nodes.Add(childNode);
treeView2.ExpandAll();
}
}
}
如果你想要一個遞歸,試試這個:
void expAll(TreeNode node)
{
node.Expand();
foreach(TreeNode i in node.Nodes)
{
expAll(i);
}
}
private TreeNode ExpandUptoLevel(TreeNode tn,int level)
{
if (level != 0)
{
level --;
tn.Nodes[0].Expand();
return ExpandUptoLevel(tn.FirstNode, level);
}
return tn;
}
要將樹中的所有節點展開到某個級別,上面的代碼不起作用。只需添加一個檢查來讀取並比較實際節點級別和您希望擴展到的級別。這是一段代碼片段。
private void ExpandUptoLevel(TreeNode tn, int level)
{
if (level >= tn.Level)
{
tn.Expand();
foreach (TreeNode i in tn.Nodes)
{
ExpandUptoLevel(i,level);
}
}
}
對Ravindra Sinare的回覆 - 不要立即張貼在上面。 – 2015-07-13 13:58:01
只能開第一節點:
for (int i = 0; i< treeView1.Nodes.Count; i++)
{
treeView1.Nodes[i].Expand();
}
雖然此代碼片段可能會解決問題,但[包括解釋](// meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers)確實有助於提高您的帖子的質量。請記住,您將來會爲讀者回答問題,而這些人可能不知道您的代碼建議的原因。也請儘量不要用解釋性註釋來擠佔代碼,這會降低代碼和解釋的可讀性! – kayess 2017-01-24 10:35:24
- 1. TreeView兒童
- 2. Gtk HeaderBar不擴展兒童
- 3. LINQ兒童擴展方法
- 4. 父格擴展到兒童的div
- 5. 建立一個telerik treeview clientside工作,但不擴展顯示兒童
- 6. WPF treeview更新兒童
- 7. 獲得一級兒童?
- 8. 兒童擴展器提升父母擴展器的擴展和摺疊事件?
- 9. 如何獲得away3D的頂級兒童?
- 10. WordPress的:如何從一個類別獲得第一級的兒童?
- 11. WPF中的TreeView兒童保證金
- 12. 擴展地區將擴大在Visual Studio中的兒童
- 13. jQuery:僅在第一級兒童中查找(XML)
- 14. WPF TreeView使兒童節點可點擊
- 15. 如何設置擴展TreeView節點的級別?
- 16. 展開查詢Azure移動服務給兒童的兒童
- 17. 使用第一代兒童與$(本)
- 18. 如何從兒童
- 19. 如何對兒童
- 20. Neo4J:展開帶有兒童兒童節點(性能)
- 21. 這個DIV爲什麼不擴展到兒童的寬度
- 22. DIV寬度不擴展,以適應兒童DIV的寬度 - IE7
- 23. 解析兒童Simplexml兒童
- 24. 兒童內部角兒童
- 25. 如何衡量兒童可擴展列表的高度和寬度
- 26. 如何爲可擴展列表中的兒童指定排序順序?
- 27. 如何檢查兒童中的數據,在Firebase中的兒童
- 28. 如何獲取兒童用品的兒童用品?
- 29. IsExpanded僅適用於TreeView的第一級
- 30. 可擴展列表視圖,兒童點擊新信息活動
迭代的節點,要求他們展開()方法。 「點擊者」太模糊了。 – 2011-12-27 20:03:57