<?xml version="1.0" encoding="utf-8"?>
<CAR autoPlayTime="10">
<item  item_url="PHOTOAD/images/01.jpg" link="#" itemtitle="马自达 RX-8">
</item>
<item  item_url="PHOTOAD/images/02.jpg" link="#" itemtitle="本田 思域 TYPE-R">
</item>
<item  item_url="PHOTOAD/images/03.jpg" link="#" itemtitle="本田 思域 TYPE-R">
</item>
<item  item_url="PHOTOAD/images/04.jpg" link="#" itemtitle="改装马自达 RX-8">
</item>
</CAR>
这个是XML文件.
直接自动生成列。不显示里面的属性节点。
但是用<@#Eval()@> 却找不到。

解决方案 »

  1.   

    可以先把Xml转换成类似数据库中的表那样,再进行操作。
      

  2.   

     sPath = Server.MapPath("/PhotoAD/xml/CAR.xml");
            ds = new DataSet();
            fout = new FileStream(sPath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
            ds.ReadXml(fout, XmlReadMode.InferSchema);
            fout.Close();
            dv = ds.Tables[0].DefaultView;
            return dv;我这样写的。
    但是绑定到GRIDVIEW的时候显示的不是我要的东西
      

  3.   

    <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataSourceID="XmlDataSource1">
        <Columns>
            <asp:TemplateField HeaderText="item_url" SortExpression="item_url">
                <ItemTemplate>
                    <asp:Image ID="Image1" runat="server" ImageUrl='<%# Eval("item_url") %>'></asp:Image>
                </ItemTemplate>
            </asp:TemplateField>
            <asp:BoundField DataField="link" HeaderText="link" SortExpression="link" />
            <asp:BoundField DataField="itemtitle" HeaderText="itemtitle" SortExpression="itemtitle" />
        </Columns>
    </asp:GridView>
    <asp:XmlDataSource ID="XmlDataSource1" runat="server" DataFile="~/XMLFile.xml"></asp:XmlDataSource>
      

  4.   

    <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataSourceID="XmlDataSource1">
        <Columns>
            <asp:TemplateField HeaderText="item_url" SortExpression="item_url">
                <ItemTemplate>
                    <asp:Image ID="Image1" runat="server" ImageUrl='<%# Eval("item_url") %>'></asp:Image>
                </ItemTemplate>
            </asp:TemplateField>
            <asp:BoundField DataField="link" HeaderText="link" SortExpression="link" />
            <asp:BoundField DataField="itemtitle" HeaderText="itemtitle" SortExpression="itemtitle" />
        </Columns>
    </asp:GridView>
    <asp:XmlDataSource ID="XmlDataSource1" runat="server" DataFile="~/PhotoAD/xml/CAR.xml"></asp:XmlDataSource>