TreeView显示树形结构的数据。XML是以树结构组织数据的。用XML来表示数据,用TreeView来显示是非常自然的。这里,以一个具体的页面来说明。
页面中,使用了TreeView1和XmlDataSource1。而且TreeView1的模板可以方便地定义数据显示的样式,指定了3级显示,以及每一级的数据榜定关系和显示的内容。
ASPX的内容:
<
asp : TreeView ID ="TreeView1" runat ="server" ShowLines ="True" EnableClientScript ="False" >< DataBindings >
< asp : TreeNodeBinding DataMember ="root" Text ="all rights" Value ="all rights" />
< asp : TreeNodeBinding DataMember ="Group" TextField ="name" ToolTipField ="name" ValueField ="name" />
< asp : TreeNodeBinding DataMember ="permissions" ShowCheckBox ="True" TextField ="#InnerText"
ToolTipField ="name" ValueField ="#InnerText" />
</ DataBindings >
<
asp:XmlDataSource ID="XmlDataSource1" runat="server" >
程序代码
每次需要刷新数据显示时,调用refreshTree方法。
void refreshTree()XmlDocument permissions = SESG.Security.SESGAuthorization.GetAllPermissions();
{
//得到数据源xml文件
//这里将EnableCaching 关闭非常重要,否则,在更新了数据源之后,无法刷新数据。
this.XmlDataSource1.EnableCaching = false;
//更新XmlDataSource1的数据this.XmlDataSource1.Data = permissions.OuterXml;
//榜定TreeView1的数据源this.TreeView1.DataSource = this.XmlDataSource1;this.TreeView1.DataBind();
}
</asp:XmlDataSource> </ asp : TreeView >