我正在使用Visual Studio 2010以及用于ASP.NET的Infragistics WebDropDown工具(这对我来说还是新手)。我正在使用“拖放”方法以及设置向导来实现设计和简单(虽然我更喜欢手动编程)。
我有一个Web用户控件(“ClientSelect.ascx”)。在这个表单中我添加了必要的ScriptManager,我也放入了WebDropDown工具。使用WebDropDown向导,我建立了WebDropDown的数据源(它添加了与数据库的连接)。向导允许您测试SQL查询,我得到的结果是正确的。
但是,当网站加载时,值为“System.Data.DataRowView”而不是实际值(“0001”,“0002”等)。无论如何“ToString()”这些结果。我只是没有看到我的查询如何返回正确的结果,但WebDropDown输出了其他内容。
这是我的代码:
<asp:ScriptManagerProxy ID="ScriptManagerProxy1" runat="server">
</asp:ScriptManagerProxy>
<ig:WebDropDown ID="WebDropDown1" runat="server" Width="112px"
DataSourceID="SqlDataSource1" Height="20px">
</ig:WebDropDown>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:ConnectionString5 %>"
SelectCommand="SELECT DISTINCT clientNum FROM myTable">
</asp:SqlDataSource>
提前感谢您的任何建议。
答案:我将查询更改为“SELECT DISTINCT clientNum AS clients FROM myTable”。然后我添加了TextField =“clients”属性。感谢MrZulu和ggonslav
答案 0 :(得分:2)
将DataTextField="clientNum"
作为属性<ig:WebDropDown ...>
答案 1 :(得分:0)
您必须将TextField属性设置为 clientNum 。
这是链接
<ig:WebDropDown ID="WebDropDown1" runat="server" Width="112px"
DataSourceID="SqlDataSource1" Height="20px"
TextField ="clientNum" >
</ig:WebDropDown>