ツリービューでルートノードまたは第1レベルのノードを取得するための、以下のコードよりも簡単な方法はありますか?
TreeNode node = treeView.SelectedNode;
while(node != null)
{
node = node.Parent;
}
実際の正しいコードは次のとおりです。
TreeNode node = treeView.SelectedNode;
while (node.Parent != null)
{
node = node.Parent;
}
それ以外の場合は、ループの最後で常にnode = null
を取得します。
ところで、TreeView
にルートが1つしかない場合は、直接treeView.Nodes[0]
を使用することを検討できます。その場合、ルートが提供されるためです。
これを試して。それは私のために働いた...!
treeView1.TopNode.Expand();
protected void Submit(object sender, EventArgs e)
{
///naidi root
string name = Request.Form["Name"];
if (String.IsNullOrEmpty(name))
return;
if (TreeView1.Nodes.Count <= 1)
{
System.Web.UI.WebControls.TreeNode newNode = new TreeNode("Porposal");
TreeView1.Nodes.Add(newNode);
}
System.Web.UI.WebControls.TreeNode newNode1 = new TreeNode(name);
TreeView1.Nodes[1].ChildNodes.Add(newNode1);
}