我想使用xmldatasource将xml数据绑定到Listbox但是我收到了一个错误

时间:2011-10-21 06:27:28

标签: .net xml listbox

DataBinding:'System.Web.UI.WebControls.XmlDataSourceNodeDescriptor'不包含名称为'name'的属性。

XML文件:

 <Persons>
  <Person >
    <id>1</id>
    <name>jkl</name>
  </Person>
  <Person >
    <id>2</id>
    <name>jhk</name>
  </Person>
  <Person >
    <id>3</id>
    <name>kjh</name>
  </Person>
  <Person >
    <id>4</id>
    <name>jhkj</name>
  </Person>
  <Person >
    <id>5</id>
    <name>lj</name>
  </Person>
  <Person >
    <id>6</id>
    <name>jhkl</name>
  </Person>
  <Person >
    <id>7</id>
    <name>jhj</name>
  </Person>
</Persons>

我希望从xml中使用datatextfield=namedatavaluefield=id绑定到列表框。

aspx页面代码是这样的:

   <asp:ListBox ID="lstBinddata" runat="server" SelectionMode="Multiple"   DataSourceID="xmldata" DataTextField="name" DataValueField="id">
   </asp:ListBox>
   <asp:XmlDataSource ID="xmldata" runat="server" DataFile="xmldata.xml"> </asp:XmlDataSource>                              

2 个答案:

答案 0 :(得分:0)

我认为你必须设置XmlDataSource的XPath属性。我想它应该是:

XPath="Persons/Person"

答案 1 :(得分:0)

您必须使用:

XPath("name")

同样,您也可以使用它来访问id:

的值
XPath("id")