У меня следующая проблема с TreeView.Вот код:
PopulateTreeNode(dsList, null, "0");
Функция для заполнения дерева:
private void PopulateTreeNode(DataSet dsList, TreeNode parent, string parentID)
{
TreeNodeCollection baseNodes;
if (parent == null)
{
baseNodes = TreeView1.Nodes;
}
else
{
baseNodes = parent.ChildNodes;
}
foreach (DataRow row in dsList.Tables[0].Select("ParentNodeID = " + parentID))
{
TreeNode node = new TreeNode();
string rowID = row["ID"].ToString();
node.Text = row["Description"].ToString();
node.Value = rowID;
node.SelectAction = TreeNodeSelectAction.Expand;
baseNodes.Add(node);
PopulateTreeNode(dsList, node, rowID);
}
}
Затем я делаю следующее, чтобы свернуть все, кроме корневого узла:
TreeView1.CollapseAll();
TreeView1.Nodes[0].Expand();
Все работает отлично, кроме корневого узла, его нельзя выбрать, его нельзя свернуть, а затем развернуть обратно.Это всегда так:
Что может быть в этом плохого?Заранее большое спасибо!
ОБНОВЛЕНИЕ Хорошо, на случай, если кто-нибудь столкнется с такой проблемой - он решил сам после того, как наш проект был переведен на ASP.NET 4.0 с 2.0.*