显示 XML 文档或 XSL 转换的结果。
<asp:Xml ????DocumentSource="uri" ????EnableTheming="True|False" ????EnableViewState="True|False" ????ID="string" ????OnDataBinding="DataBinding event handler" ????OnDisposed="Disposed event handler" ????OnInit="Init event handler" ????OnLoad="Load event handler" ????OnPreRender="PreRender event handler" ????OnUnload="Unload event handler" ????runat="server" ????SkinID="string" ????TransformSource="string" ????Visible="True|False" /> |
备注
使用
要显示的 XML 文档通过设置三个属性之一来指定。这三个属性表示可以显示的 XML 文档的不同类型。通过设置适当的属性,可以显示
属性 | 说明 | ||
---|---|---|---|
|
使用 XmlDocument 对象来设置 XML 文档。 |
||
|
使用字符串来设置 XML 文档。
|
||
|
使用文件来设置 XML 文档。 |
![]() |
---|
必须至少设置一个 XML 文档属性,否则将不会显示任何 XML 文档。如果设置了多个 XML 文档属性,则显示所设置的最后一个属性中的 XML 文档。其他属性中的文档将被忽略。 |
还可根据需要通过设置两个属性之一来指定 XSL 转换文档,该文档在将 XML 文档写入输出流之前对其进行格式化。这两个属性表示可用于格式化 XML 文档的 XSL 转换文档的不同类型。通过设置适当的属性,可以使用
属性 | 说明 |
---|---|
|
使用指定的 XslTransform 格式化 XML 文档。 |
|
使用指定的 XSL 转换文件格式化 XML 文档。 |
![]() |
---|
XSL 转换文档是可选的。不需要设置 Transform 或 TransformSource 属性。如果同时设置了两个 XSL 转换文档属性,则所设置的最后一个属性将确定使用哪个 XSL 转换文档格式化 XML 文档。另一个属性将被忽略。 |
Xml 类还提供了
示例
以下内容显示一个示例 XML 文件。
? | ![]() |
---|---|
<People> <Person> <Name> <FirstName>Joe</FirstName> <LastName>Suits</LastName> </Name> <Address> <Street>1800 Success Way</Street> <City>Redmond</City> <State>WA</State> <ZipCode>98052</ZipCode> </Address> <Job> <Title>CEO</Title> <Description>Wears the nice suit</Description> </Job> </Person> <Person> <Name> <FirstName>Linda</FirstName> <LastName>Sue</LastName> </Name> <Address> <Street>1302 American St.</Street> <City>Paso Robles</City> <State>CA</State> <ZipCode>93447</ZipCode> </Address> <Job> <Title>Attorney</Title> <Description>Stands up for justice</Description> </Job> </Person> <Person> <Name> <FirstName>Jeremy</FirstName> <LastName>Boards</LastName> </Name> <Address> <Street>34 Palm Avenue</Street> <City>Waikiki</City> <State>HI</State> <ZipCode>98052</ZipCode> </Address> <Job> <Title>Pro Surfer</Title> <Description>Rides the big waves</Description> </Job> </Person> <Person> <Name> <FirstName>Joan</FirstName> <LastName>Page</LastName> </Name> <Address> <Street>700 Webmaster Road</Street> <City>Redmond</City> <State>WA</State> <ZipCode>98073</ZipCode> </Address> <Job> <Title>Web Site Developer</Title> <Description>Writes the pretty pages</Description> </Job> </Person> </People> |
以下内容显示一个示例 XSL 转换文件。
? | ![]() |
---|---|
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/People"> <xsl:apply-templates select="Person" /> </xsl:template> <xsl:template match="Person"> <table width="100%" border="1"> <tr> <td> <b> <xsl:value-of select="Name/FirstName" />   <xsl:value-of select="Name/LastName" /> </b> </td> </tr> <tr> <td> <xsl:value-of select="Address/Street" /><br /> <xsl:value-of select="Address/City" /> , <xsl:value-of select="Address/State" /> <xsl:value-of select="Address/Zip" /> </td> </tr> <tr> <td> Job Title: <xsl:value-of select="Job/Title" /><br /> Description: <xsl:value-of select="Job/Description" /> </td> </tr> </table> </xsl:template> <xsl:template match="bookstore"> <!-- Prices and books --> <bookstore> <xsl:apply-templates select="book"/> </bookstore> </xsl:template> <xsl:template match="book"> <book> <xsl:attribute name="ISBN"> <xsl:value-of select="@ISBN"/> </xsl:attribute> <price> <xsl:value-of select="price"/> </price> <xsl:text> </xsl:text> </book> </xsl:template> </xsl:stylesheet> |
下面的示例演示如何通过 Xml 控件来使用示例 XSL 转换文件显示示例 XML 文件。请确保示例 XML 文件名为 People.xml,示例 XSL 转换文件名为 Peopletable.xsl。
? | ![]() |
---|---|
<html> <body> <h3>Xml Example</h3> <form runat="server"> <asp:Xml id="xml1" DocumentSource="people.xml" TransformSource="peopletable.xsl" runat="server" /> </form> </body> </html> |
下面的示例演示如何从示例 XML 和 XSL 转换文件创建 XmlDocument 和 XslTransform 对象。然后,Xml 控件使用这两个对象显示 XML 文档。请确保示例 XML 文件名为 People.xml,示例 XSL 转换文件名为 Peopletable.xsl。
Visual Basic? | ![]() |
---|---|
<%@ Page Language="VB" AutoEventWireup="True" %> <%@ Import Namespace="System.Xml" %> <%@ Import Namespace="System.Xml.Xsl" %> <html> <script runat="server"> Sub Page_Load(sender As Object, e As EventArgs) Dim doc As XmlDocument = New XmlDocument() doc.Load(Server.MapPath("people.xml")) Dim trans As XslTransform = new XslTransform() trans.Load(Server.MapPath("peopletable.xsl")) xml1.Document = doc xml1.Transform = trans End Sub </script> <body> <h3>Xml Example</h3> <form runat="server"> <asp:Xml id="xml1" runat="server" /> </form> </body> </html> |
C#? | ![]() |
---|---|
<%@ Page Language="C#" AutoEventWireup="True" %> <%@ Import Namespace="System.Xml" %> <%@ Import Namespace="System.Xml.Xsl" %> <html> <script runat="server"> void Page_Load(Object sender, EventArgs e) { XmlDocument doc = new XmlDocument(); doc.Load(Server.MapPath("people.xml")); XslTransform trans = new XslTransform(); trans.Load(Server.MapPath("peopletable.xsl")); xml1.Document = doc; xml1.Transform = trans; } </script> <body> <h3>Xml Example</h3> <form runat="server"> <asp:Xml id="xml1" runat="server" /> </form> </body> </html> |
请参见
