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=name
和datavaluefield=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>
答案 0 :(得分:0)
我认为你必须设置XmlDataSource的XPath属性。我想它应该是:
XPath="Persons/Person"
答案 1 :(得分:0)
您必须使用:
XPath("name")
同样,您也可以使用它来访问id:
的值XPath("id")