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>