• λ我爱Aspx >> Asp.Net >> ASP.NET中使用Treeview和XML
  • ASP.NET中使用Treeview和XML

  • :aspxer  Դ:internet  :2007-5-20 16:33:04  ؼ:.net,asp.net,asp,xml
  • 这样就将该xml文件绑定到树形控件中去了,运行后可以看到结果:

    ASP.NET Books Teach Yourself Active Server Pages 3.0 in 21 DaysDesigning Active Server PagesASP.NET: Tips, Tutorials, and CodeProgramming ASP.NET

    可以看到,使用第一种方法的确比较麻烦,不能对XML的结点进行筛选或者其他操作。而如果使用第二种方法的XSL,则可以根据需要随时对原来的XML进行格式的控制,十分方便。

    在使用XSL时,可以用如下的方法对树形控件进行绑定:

    <form runat="server"><ie:TreeView runat="server"><ie:TreeNode runat="server" Text="ASP.NET Books" Expanded="True" TreeNodeSrc="aspnetbooks.xml" TreeNodeXsltSrc="aspbooks.xsl" /> </ie:TreeView></form>

    其中,treenodexsltsrc的属性中指定要转换的XSL文件,我们设计的XSL文件如下:

    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version=@#1.0@#><xsl:template match="/books"> <TREENODES> <xsl:for-each select="book"> <treenode> <xsl:attribute name="text"> <xsl:value-of select="title" /> </xsl:attribute> <treenode> <xsl:attribute name="text"> Price - $<xsl:value-of select="@price" /> </xsl:attribute> </treenode> <treenode text="Authors"> <xsl:for-each select="authors/author"> <treenode> <xsl:attribute name="text"> <xsl:value-of select="text()" /> </xsl:attribute> </treenode> </xsl:for-each> </treenode> <treenode> <xsl:attribute name="text"> Year Published - <xsl:value-of select="year" /> </xsl:attribute> </treenode> </treenode></xsl:for-each></TREENODES></xsl:template></xsl:stylesheet>

    在上面的XSL中,我们通过形如:

    <xsl:attribute name="text"><xsl:value-of select="title" /></xsl:attribute>

    的属性设置,提取XML文件中每个结点的值,将其赋值给予treenode的text属性中。当然,也可以在XSL中使用XPATH等设置要显示的结点。

    运行后,结果同样与用第一种方法的一样,能正确显示树形控件,而且灵活性比较高。

    Ҷƪл˵?
  • һƪ在Asp.net中如何实现弹出提示对话框
    һƪASP.NET中的HTTP模块和处理程序