运行是总是出现错误:dropdownlist1有一个无效 SelectedValue,因为它不在项目列表中。

参数名:value我的程序为:<EditItemTemplate><asp:DropDownListID="DropDownList1"runat="server"Dat... 参数名:value
我的程序为:
<EditItemTemplate>
<asp:DropDownList ID="DropDownList1" runat="server" DataSourceID="SqlDataSource2"
DataTextField="a_code" DataValueField="a_code" SelectedValue='<%# Bind("a_code") %>'>
</asp:DropDownList>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Bind("a_code") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
是在gridview中添加dropdownlist控件
有什么问题?应该怎样改写?
展开
 我来答
cmbird
2008-09-04 · TA获得超过576个赞
知道小有建树答主
回答量:211
采纳率:0%
帮助的人:303万
展开全部
如果你的数据库中a_code字段的值总不为null的话,你的程序是没有问题的。因为在数据绑定时为DropDownList提供了所有合适的SelectedValue。
但是当a_code字段的值为null时,就会出错了,因为SelectedValue不能为null。
有两种解决方法,一是修改你的数据库,让a_code这一列为能为空。
还有一种方法就是改一下你的代码,改成
<asp:DropDownList ID="DropDownList1" runat="server" DataSourceID="SqlDataSource2"
DataTextField="a_code" DataValueField="a_code" SelectedValue='<%# Bind("a_code") %>' AppendDataBoundItems="True">
<asp:ListItem Value='' >(无)</asp:ListItem>
</asp:DropDownList>
在绑定的数据前加上一项(无),它对应null值。这样就不会出错了。
iceser
推荐于2018-05-14 · TA获得超过2708个赞
知道大有可为答主
回答量:695
采纳率:100%
帮助的人:452万
展开全部
首先,你的 DropDownList1 有一个 DataSourceID,所以,它就绑定了一个列表出来,就是那个下拉列表。

然后在计算 SelectedValue 属性表达式的时候,出现了一个问题:

也就说 <%# Bind("a_code") %> 这个 a_code 的值,DropDownList1的下拉列表中没有这个值的选项,所以这里出问题。

是你数据库里的值,和这个列表框中的值不匹配。

假设你的列表框出来有5项。
值分别是 1、2、3、4、5
但是你这个 a_code 的值却是 6,那就会出这个错误。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fancyivan
2008-09-04 · TA获得超过837个赞
知道小有建树答主
回答量:633
采纳率:0%
帮助的人:436万
展开全部
selectedvalue有问题
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式