如何解决数据绑定下拉列表显示System.Data.DataRowView而不是项目?
| 我的页面上有3个下拉列表,所有下拉列表都使用相同的功能正常的连接字符串。当第三个DDL工作时,前两个仅显示System.Data.DataRowView而不是表中的项目。为什么?这不是选择命令;表和行名是正确的,即使我将select命令替换为工作的DDLs命令,结果也相同。代码如下: 第一个功能不良的DDL:<asp:Panel ID=\"CustPanel\" runat=\"server\" BorderWidth=\"4px\" CssClass=\"myPanelCss\" Width=\"700px\">
<asp:Label ID=\"LblCustlist\" runat=\"server\" Text=\"Customer: \" />
<asp:DropDownList ID=\"DropDownList1\" runat=\"server\" DataSourceID=\"SqlCustNameSource\">
<asp:ListItem Value=\"0\" Text=\"Choose Customer\" Selected=\"True\"></asp:ListItem>
</asp:DropDownList>
<asp:SqlDataSource ID=\"SqlCustNameSource\" runat=\"server\" ConnectionString=\"<%$ ConnectionStrings:MyConnectionString %>\" SelectCommand=\"SELECT [CustName] FROM [Customer]\"></asp:SqlDataSource>
<asp:Button ID=\"BtnCustShow\" runat=\"server\" Text=\"New Customer\" OnClick=\"BtnCustShow_Click\" />
</asp:Panel>
第二个功能失调的ddl:
<asp:Panel ID=\"BroPanel\" runat=\"server\" BorderWidth=\"4px\" CssClass=\"myPanelCss\" Width=\"700px\">
<asp:Label ID=\"LblBrolist\" runat=\"server\" Text=\"Broker: \" />
<asp:DropDownList ID=\"DdlBro\" runat=\"server\" DataSourceID=\"SqlBroNameSource\">
<asp:ListItem Value=\"0\" Text=\"Choose Customer\" Selected=\"True\"></asp:ListItem>
</asp:DropDownList>
<asp:SqlDataSource ID=\"SqlBroNameSource\" runat=\"server\" ConnectionString=\"<%$ ConnectionStrings:MyConnectionString %>\" SelectCommand=\"SELECT [BroName] FROM [Broker]\"></asp:SqlDataSource>
<asp:Button ID=\"BtnBroShow\" runat=\"server\" Text=\"New Broker\" OnClick=\"BtnBroShow_Click\" />
</asp:Panel>
和工作的DDL:
<asp:DropDownList ID=\"DdlCustState\" runat=\"server\" DataSourceID=\"SqlDataSource2\" DataTextField=\"State\" DataValueField=\"State\" />
<asp:SqlDataSource ID=\"SqlDataSource2\" runat=\"server\" ConnectionString=\"<%$ ConnectionStrings:MyConnectionString %>\" SelectCommand=\"SELECT [State] FROM [States]\">
</asp:SqlDataSource>
就像我说的那样,如果我使前两个的选择命令与第三个功能性ddl相同,那么我仍然会遇到相同的失败。有任何想法吗?
解决方法
您可以使用一种有效的DataTextField = \“ State \”和DataValueField =“ \” State \“,但不能使用一种。
,编辑:忽略我第二次发布的信息。
上面的海报所说的是正确的。您是DDL缺少他们的
DataTextField = \“ \”
DataValueField = \“ \”
他们用来填充列表本身中的值的字段。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。