TreeView服务器控件的功能和属性
功能
TreeView服务器控件用于以树形结构显示分层数据,如目录或文件目录,它支持如下功能。
支持数据绑定。即允许通过数据绑定方式,使得控件节点与XML、表格、关系型数据等结构化数据建立紧密联系。
支持站点导航功能。即通过集成SiteMapDataSource控件集成,实现站点导航功能。
节点文字可显示为普通文本或超级链接文本。
可自定义树形和节点的样式、主题等外观特征。
支持动态功能。通过编程访问TreeView对象模型,完成动态创建树形结构、构造节点和设置属性等任务。
在客户端浏览器支持的情况下,支持由客户端构建节点,减少到服务端的回送。
TreeView服务器控件呈现的树状结构可以兼容不同类型的浏览器。
具有在节点显示CheckBox控件的功能。
属性
TreeView服务器控件常用属性及说明如表1所示。

表1 TreeView服务器控件常用属性及说明
下面对比较重要的属性进行详细介绍。
(1)ExpandDepth属性。
获取或设置默认情况下TreeView服务器控件展开层次数。例如,若将该属性设置为2,则将展开根节点及根节点下方紧邻的所有父节点。默认值为-1,表示将所有节点完全展开。
语法:
public int ExpandDepth { get; set; }
属性值:最初显示TreeView控件时要显示的深度。
(2)Nodes属性。
使用Nodes属性可以获取一个包含树中所有根节点的TreeNodeCollection对象。Nodes属性通常用于快速循环访问所有根节点,或者访问树中的某个特定根节点,同时还可以使用 Nodes属性以编程方式管理树中的根节点,即可以在集合中添加、插入、移除和检索TreeNode 对象。
语法:
public TreeNodeCollection Nodes { get; }
属性值:TreeView控件中的根节点。
例如,在使用Nodes属性遍历树时,判断根节点数,代码如下:
if (TreeView1.Nodes.Count > 0)
{
for (int i = 0; i < TreeView1.Nodes.Count; i++)
{
……其他操作
}
}
(3)SelectedNode属性。
SelectedNode属性用于获取用户选中节点的TreeNode对象。当节点显示为超链接文本时,该属性返回值为null,不可用。
语法:
public TreeNode SelectedNode { get; }
属性值:TreeView控件中的选定节点。
例如,从TreeView控件中将选择的节点值赋给Label控件,代码如下:
Label1.Text += "
被选择的节点为:"+TreeView1.SelectedNode.Text;
(4)ShowCheckBoxes属性。
ShowCheckBoxes属性是用来获取或设置一个值,该值指示哪些节点类型将在TreeView控件中显示复选框。ShowCheckBoxes属性是System.Web.UI.WebControls.TreeNodeTypes的枚举值组合,System.Web.UI.WebControls.TreeNodeTypes的枚举值类型及说明如表2所示。

表2 System.Web.UI.WebControls.TreeNodeTypes的枚举值类型及说明