2014-09-26 71 views
0

我正在为一个学校项目做这个网站,当我运行这个网站时我有一个GridView,我选择一个注册表,然后它打开FormView,并显示关于所选注册表的所有细节DropDownList有一个无效的SelectedValue错误

Image of the website working

现在,当我打的编辑在FormView控件它给了我下面的错误: “ddl_SelectMae”有一个无效的SelectedValue,因为它不在项目列表中存在。参数名:价值

我知道,出现此错误,因为现场“美”的值是空的,但我看到了数据库和值可以为null。 (同样的错误适用于“排”和“买办”字段)

在这些地方发生错误代码的一部分,如果需要的话

<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

有人可以帮助我如何停止的错误,并保持DropDownLis t编辑字段?

PS:很抱歉,我的英语,但我是葡萄牙人,感谢你的帮助

回答

0

更改您的数据源,所以NULL可以被允许为:

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