DropDownList具有无效的SelectedValue错误

时间:2014-09-26 03:06:32

标签: asp.net .net vb.net visual-studio visual-studio-2013

我正在为一个学校项目做这个网站,当我运行这个网站时,我有一个GridView,我选择一个注册表,然后它打开FormView,其中包含所选注册表的所有详细信息

Image of the website working

现在,当我在FormView上点击Edit时,它会给我以下错误: 'ddl_SelectMae'具有无效的SelectedValue,因为它在项目列表中不存在。参数名称:值

我知道,出现此错误是因为字段“Mãe”上的值为null,但我看到了数据库,该值可以为null。 (同样的错误适用于“Pai”和“Comprador”字段)

这里是发生错误的代码部分,我可以根据需要放置所有代码

<asp:FormView ID="fv_Alteracoes" runat="server" DataKeyNames="idCao" DataSourceID="SqlDS_InsEdiDel">
       <EditItemTemplate>
            <table>
                <tr>
                    <td>Mãe:</td>
                    <td>
                        <asp:DropDownList ID="dll_SelectMae" runat="server" DataSourceID="SqlDS_ListarMae" DataTextField="idCao" DataValueField="idCao"
                            SelectedValue='<%# Bind("Mae") %>'>
                        </asp:DropDownList>
                        <asp:SqlDataSource runat="server" ID="SqlDS_ListarMae" ConnectionString='<%$ ConnectionStrings:ConnectionString %>'
                            SelectCommand="SELECT [idCao], [Nome] FROM [tbl_Cao] WHERE ([Sexo] = 'F')">
                        </asp:SqlDataSource>
                    </td>
               </table>
            <asp:LinkButton runat="server" Text="Update" CommandName="Update" ID="UpdateButton" CausesValidation="True" />&nbsp;
            <asp:LinkButton runat="server" Text="Cancel" CommandName="Cancel" ID="UpdateCancelButton" CausesValidation="False" />
       </EditItemTemplate>

如果我这样做但是注册表中填写了所有详细信息,那么该网站将按照我的要求100%工作

Image of website working perfectly

有人可以帮我解决这个错误并让DropDownList编辑字段吗?

PS:对不起我的英语,但我是葡萄牙语,谢谢你的帮助

1 个答案:

答案 0 :(得分:0)

更改您的数据源,以便允许null为:

SELECT [idCao], [Nome] FROM [tbl_Cao] WHERE ([Sexo] = 'F')
union 
Select null,'None'