C# 如何使用datatable动态填充嵌套在表单视图中的droplist?
我试图用C# 如何使用datatable动态填充嵌套在表单视图中的droplist?,c#,asp.net,sql-server,webforms,formview,C#,Asp.net,Sql Server,Webforms,Formview,我试图用SQL中的数据和数据表来填充asp:DropDownList。但是,我发现错误“CreatedByDropList”有一个SelectedValue,该值无效,因为它不在项目列表中。参数名称:值 asp:DropDownList位于formview中,formview的选择由gridview填充 以下是Formview的编辑和插入模板中的DropList控件的HTML: <asp:DropDownList ID="CreatedByDropList" AppendDataBound
SQL
中的数据和数据表来填充asp:DropDownList
。但是,我发现错误“CreatedByDropList”有一个SelectedValue,该值无效,因为它不在项目列表中。参数名称:值
asp:DropDownList
位于formview中,formview的选择由gridview填充
以下是Formview的编辑和插入模板中的DropList控件的HTML:
<asp:DropDownList ID="CreatedByDropList" AppendDataBoundItems="true" SelectedValue='<%# Bind("CreatedBy") %>' runat="server" />
我在整个过程中放置了断点以进行一些故障排除,但调试窗口始终保持空白(意味着所有调试窗口都是空白且无用的)。reader 1没有执行任何操作。正如这段代码所示,它只是迭代从命令返回的所有行,将它们分配给变量,然后不处理它们 此外,您的数据表中没有任何名为“newUserName”或“numUserId”的列。将最后4行更改为:
foreach(DataRow row in dt.Rows)
{
ddlCreatedBy.Items.Add(new ListItem(row["FirstName"] + " " + row["LastName"], row["UserId"]);
}
这会导致以下错误“无法从对象转换为字符串”
foreach(DataRow row in dt.Rows)
{
ddlCreatedBy.Items.Add(new ListItem(row["FirstName"] + " " + row["LastName"], row["UserId"]);
}