我有这个代码来选择TreeView的第一个节点。但是当页面加载默认根节点不是第一个时,我想默认将所选节点设置为最顶层。这是我在页面加载中的代码,但它不起作用:
Dim nodes As TreeNodeCollection = TreeView1.Nodes
If nodes.Count > 0 Then
' Select the root node
TreeView1.SelectedNode = nodes(0)
End If
这会在此行中显示蓝色下划线错误:
TreeView1.SelectedNode = nodes(0)
错误是:
“选定的节点属性是只读”
请有人告诉我该怎么做?
答案 0 :(得分:2)
要选择节点,您需要在节点本身上设置所选属性:
nodes(0).Selected = true
同样可以使用:
nodes(0).Select()
答案 1 :(得分:0)
nodes(0).Selected
http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.treenode.select.aspx
答案 2 :(得分:0)
在ASP.Net中.SelectedNode是readonly只能获取但不能使用此属性设置它。您可以使用Node.Selected = true或Node.Selected = false来实现相同的功能!
试试这个:
Dim nodes As TreeNodeCollection = TreeView1.Nodes
If nodes.Count > 0 Then
' Select the root node
nodes(0).Selected = true
End If
答案 3 :(得分:0)
List<ARTICLE_REVIEW> reviewList = eb.ArticleReviewGetByUserOID(long.Parse(Session["User_OID"].ToString()));
treeReviews.Nodes.Clear();
foreach (ARTICLE_REVIEW review in reviewList)
{
TreeNode stepNode = new TreeNode();
stepNode.Value = review.ID.ToString();
stepNode.Text = review.TITLE;
treeReviews.Nodes.Add(stepNode);
treeReviews.ExpandAll();
// Set the root node to be selected
treeReviews.Nodes[0].Selected = true;
}