这是在网上找到的方法。
前台代码:
<asp:TreeView ID="TreeView1" runat="server" ExpandDepth="0" OnTreeNodeExpanded="TreeView1_TreeNodeExpanded" ShowLines="True">
关键是:OnTreeNodeExpanded="TreeView1_TreeNodeExpanded"
后台代码:
protected void TreeView1_TreeNodeExpanded(object sender, TreeNodeEventArgs e)
{
TreeNodeCollection ts = null;
if (e.Node.Parent == null)
{
ts = ((TreeView)sender).Nodes;
}
else
ts = e.Node.Parent.ChildNodes;
foreach (TreeNode node in ts)
{
if (node != e.Node)
{
node.Collapse();
}
}
}
基本上可以用,但是不符合要求的是有时候将本身的节点也关闭了,不知道为什么。理论上是不会关闭的,
但我在实际中运用的时候有时候会关闭的。
最后只好改用其他控件了。