|
2.8、TreeView 回发 默认情况下,除非浏览器不支持客户端脚本或者 EnableClientScript 属性被设置为 false,否则 TreeView 控件将在客户端处理展开 - 折叠功能。如果 PopulateNodesFromClient 属性被设置为 true 并且浏览器支持客户端脚本,那么 TreeView 控件将从服务器检索数据,而不回发整页。 当 TreeView 控件处于选择模式时,每次用户单击节点时都将回发到服务器并引发 SelectedNodeChanged 事件。 通常,您应该在 TreeView 控件处于选择模式或正在动态填充节点时处理回发事件。原因是 PopulateOnDemand 或 PopulateNodesFromClient 属性已设置为 true。
2.9、将 TreeView 控件与 UpdatePanel 控件一起使用 UpdatePanel 控件用于通过回发更新页面的选定区域,而不是更新整个页面。可在 UpdatePanel 控件内使用 TreeView 控件,但具有以下限制: ·TreeView 回调必须与异步回发关联,否则回调事件验证将会失败。在将 TreeNode 控件的 PopulateOnDemand 属性设置为 true 时,即启用了回调。可以使用以下方法之一来确保 TreeView 回调对 UpdatePanel 控件起作用: ·如果 TreeView 控件不在 UpdatePanel 控件内,则在不是异步回发的一部分的 TreeNode 控件上禁用回调。为此,需要将 PopulateOnDemand 属性设置为 false。 ·以编程方式刷新在异步回发过程中注册回调的所有控件。例如,可以将 TreeView 控件放置在 UpdatePanel 控件内。TreeView 控件不必位于发起异步回发的 UpdatePanel 控件中,只要包含 TreeView 控件的 UpdatePanel 控件刷新即可。
·必须使用对级联样式表 (CSS) 类的引用来应用样式。例如,使用属性-CssClass(其中属性指 Property)属性 (Attribute) 来设置样式,而不是使用属性-子属性(其中属性指 Property)属性 (Attribute) 设置 NodeStyle 属性 (Property)。同样,在使用 NodeStyle 模板设置样式时,请使用模板的 CssClass 属性 (Attribute)。
·EnableClientScript 属性必须为 true(默认值)。此外,如果对 TreeView 控件启用了回调,则不能在异步回发之间更改 EnableClientScript 属性。
2.10、TreeNode 呈现 每个 TreeNode 对象包含四个 UI 元素,下面的图像中显示了这些元素,下面的表中还对其进行了描述。
2.11、TreeNode UI 元素
“展开/折叠”图像 复选框 “节点”图像 “节点”文本
TreeView 还具有一个为所有节点指定缩进量级的 NodeIndent 属性。节点会从呈现 TreeView 控件的一侧缩进。对于从左向右呈现的区域设置而言,这是指左侧,而对于从右向左呈现的区域设置而言,这是指右侧。 当一个节点被选中或鼠标悬停于该节点上时,可对该节点应用不同的样式。当某个节点的 Selected 属性设置为 true 时,将应用 SelectedNodeStyle 属性,对于选中的节点,该属性将重写任何未选择的样式属性。当鼠标悬停于某个节点上时,将应用 HoverNodeStyle 属性。下面的图像和表描述了 TreeNodeStyle 属性。
2.12、TreeNodeStyle 属性
NodeSpacing VerticalPadding HorizontalPadding ChildNodesPadding ImageUrl
TreeView 控件的另一个自定义呈现功能是它可以通过使用 ShowCheckBoxes 属性在节点文本和图像之间显示复选框。显示复选框允许用户一次选择多个节点,这对于类似新闻组树结构的界面特别有用,这样用户可以一次选择并订阅多个新闻组。
2.14、使用 ExpandDepth 属性 默认情况下,TreeView 控件将显示被展开的树的所有节点。可以将 TreeView 控件配置为最初显示到任何深度。要执行此操作,可以将 ExpandDepth 属性设置为要显示的节点级别所对应的数字。例如,如果将 ExpandDepth 属性设置为 2,那么当站点最初呈现在客户端时,将显示节点的两个级别或两个子节点。 资料引用:http://www.knowsky.com/540779.html (责任编辑:admin) |