0
我目前正在編寫一個自定義Web窗體控件,其中包括嵌入式TreeView控件。這個TreeView控件的內容是編程產生這樣的:ASP TreeView:所有節點都有相同的ID
public void PopulateTreeView(TreeView treeView)
{
// Initialize with a single root node.
treeView.Nodes.Clear();
TreeNode currentNode = new TreeNode("root");
treeView.Nodes.Add(currentNode);
// Some logic with basically a depth first search through some data classes.
{
TreeNode node = new TreeNode(/* node label */);
currentNode.ChildNodes.Add(node);
if (/* some condition */)
{
currentNode = node;
}
}
}
渲染時,一切都看起來不錯,但生成的所有HTML元素的ID是ControlName1n0,它具有點擊擴大效果/摺疊圖標只會展開/摺疊根節點。
有誰知道這是什麼原因或如何解決這個問題?
沒有看到實際的代碼(它將對你的整體發佈,或至少相關的位是有用的),我的直覺是你沒有動態分配的ID在創建節點時。請顯示您添加ID的位置。 – mjw
這是_is_實際代碼的相關位,我確實沒有用TreeNodes做更多的事情,而不是創建它們並將它們分配給它們各自的父母。 我也無法找到[這裏](https://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.treenode%28v=vs.110%29.aspx)給TreeNodes分配一個ID - 唯一提到的就是分配不同的_Value_屬性,但這沒有幫助。 –