2012-01-05 2 views
3

파일 시스템을 나타내는 트리 뷰가 있습니다. 새 노드 버튼이 있습니다. 선택한 노드에 자식 노드가있는 경우 제대로 작동하지만 선택한 노드에는 자식 노드가없는 경우 제대로 작동합니다. 편집 가능한 하위 노드를 추가 할 수 없습니다. 다음 코드를 사용하고 있습니다 :winforms에서 편집 가능한 첫 번째 자식 노드를 추가하는 방법

tree.LabelEdit = true; 
TreeNode node = new TreeNode("New Folder"); 
if(tree.SelectedNode.Nodes.Count>0) 
    tree.SelectedNode.Expand(); 

tree.SelectedNode.Nodes.Add(node); 

if(tree.SelectedNode.Nodes.Count>0) 
    tree.SelectedNode.Expand(); 
node.BeginEdit(); 

어떤 아이디어가 잘못 되었습니까?

public Form1() 
{ 
    InitializeComponent(); 
    tree.SelectedNode = tree.Nodes.Add("Hello", "Hello"); 
} 

private void button1_Click(object sender, EventArgs e) 
{ 
    tree.LabelEdit = true; 
    TreeNode node = new TreeNode("New Folder"); 
    tree.SelectedNode.Nodes.Add(node); 
    tree.SelectedNode.Expand(); 
    node.BeginEdit(); 
} 

설명 : 당신은 자식 노드를하지 않은 노드를 확장 할 수 없습니다

답변

2

그냥 그런 코드의 두 줄을 변경합니다. 따라서 노드를 추가해야만 부모 노드를 확장 할 수 있습니다.

+0

작동하지 않습니다. 내 업데이트 된 코드 –

+0

@NitinChaudhari : 다른 곳에 오류가 있어야합니다. treeview의 일부 이벤트를 구독하셨습니까? 위의 코드를 테스트 한 결과 작동합니다! – Fischermaen

+0

나는 BeforeExpand와 AfterLabelEdit을 가지고있다. 그러나 그것은 afterlabeledit에서 깨지지 않는다. 작동하는 샘플을 이메일로 보내 주시겠습니까? –

관련 문제