获取错误SelectedValue无效,因为它在项目列表中不存在。参数名称:运行时的值 [英] Getting error SelectedValue which is invalid because it does not exist in the list of items. Parameter name: value at run time

查看:82
本文介绍了获取错误SelectedValue无效,因为它在项目列表中不存在。参数名称:运行时的值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我在doprid文本框中输入dopdown时,我收到此错误:

''DropDownList1''具有一个无效的SelectedValue,因为它在项目列表中不存在。参数名称:value



我的代码是:

While i am putting dopdown in grridview textbox i am getting this error:
''DropDownList1'' has a SelectedValue which is invalid because it does not exist in the list of items. Parameter name: value

My code is:

<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"

            BackColor="#DEBA84" BorderColor="#DEBA84" BorderStyle="None" BorderWidth="1px"

            CellPadding="3" CellSpacing="2" DataKeyNames="EmployeeId"

            DataSourceID="SqlDataSource1">
            <RowStyle BackColor="#FFF7E7" ForeColor="#8C4510" />
            <Columns>
                <asp:CommandField ShowDeleteButton="True" ShowEditButton="True" />
                <asp:TemplateField HeaderText="EmployeeId" SortExpression="EmployeeId">
                    <EditItemTemplate>
                        <asp:Label ID="Label1" runat="server" Text='<%# Eval("EmployeeId") %>'></asp:Label>
                    </EditItemTemplate>
                    <ItemTemplate>
                        <asp:Label ID="Label1" runat="server" Text='<%# Bind("EmployeeId") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:TemplateField HeaderText="Name" SortExpression="Name">
                    <EditItemTemplate>
                        <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("Name") %>'></asp:TextBox>
                    </EditItemTemplate>
                    <ItemTemplate>
                        <asp:Label ID="Label2" runat="server" Text='<%# Bind("Name") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:TemplateField HeaderText="Gender" SortExpression="Gender">
                    <EditItemTemplate>
                       <asp:DropDownList ID="DropDownList1" runat="server" SelectedValue='<%# Bind("Gender") %>'>
                       <asp:ListItem Text ="Select gender:" Value="Select gender:" Selected="True"></asp:ListItem>
                       <asp:ListItem Text="Male" Value ="Male"></asp:ListItem>
                       <asp:ListItem Text ="Female" Value ="Female" ></asp:ListItem>
                       </asp:DropDownList>
                    </EditItemTemplate>
                    <ItemTemplate>
                        <asp:Label ID="Label3" runat="server" Text='<%# Bind("Gender") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:TemplateField HeaderText="City" SortExpression="City">
                    <EditItemTemplate>
                        <asp:TextBox ID="TextBox3" runat="server" Text='<%# Bind("City") %>'></asp:TextBox>
                    </EditItemTemplate>
                    <ItemTemplate>
                        <asp:Label ID="Label4" runat="server" Text='<%# Bind("City") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
            </Columns>
            <FooterStyle BackColor="#F7DFB5" ForeColor="#8C4510" />
            <PagerStyle ForeColor="#8C4510" HorizontalAlign="Center" />
            <SelectedRowStyle BackColor="#738A9C" Font-Bold="True" ForeColor="White" />
            <HeaderStyle BackColor="#A55129" Font-Bold="True" ForeColor="White" />
        </asp:GridView><br /><br />
        <asp:SqlDataSource ID="SqlDataSource1" runat ="server"

            ConflictDetection="CompareAllValues"

            ConnectionString="<%$ ConnectionStrings:DB1ConnectionString %>"

            DeleteCommand="DELETE FROM [tblEmployee] WHERE [EmployeeId] = @original_EmployeeId AND [Name] = @original_Name AND [Gender] = @original_Gender AND (([City] = @original_City) OR ([City] IS NULL AND @original_City IS NULL))"

            InsertCommand="INSERT INTO [tblEmployee] ([EmployeeId], [Name], [Gender], [City]) VALUES (@EmployeeId, @Name, @Gender, @City)"

            OldValuesParameterFormatString="original_{0}"

            SelectCommand="SELECT * FROM [tblEmployee]"

            UpdateCommand="UPDATE [tblEmployee] SET [Name] = @Name, [Gender] = @Gender, [City] = @City WHERE [EmployeeId] = @original_EmployeeId AND [Name] = @original_Name AND [Gender] = @original_Gender AND (([City] = @original_City) OR ([City] IS NULL AND @original_City IS NULL))">
            <DeleteParameters>
                <asp:Parameter Name="original_EmployeeId" Type="Int32" />
                <asp:Parameter Name="original_Name" Type="String" />
                <asp:Parameter Name="original_Gender" Type="String" />
                <asp:Parameter Name="original_City" Type="String" />
            </DeleteParameters>
            <UpdateParameters>
                <asp:Parameter Name="Name" Type="String" />
                <asp:Parameter Name="Gender" Type="String" />
                <asp:Parameter Name="City" Type="String" />
                <asp:Parameter Name="original_EmployeeId" Type="Int32" />
                <asp:Parameter Name="original_Name" Type="String" />
                <asp:Parameter Name="original_Gender" Type="String" />
                <asp:Parameter Name="original_City" Type="String" />
            </UpdateParameters>
            <InsertParameters>
                <asp:Parameter Name="EmployeeId" Type="Int32" />
                <asp:Parameter Name="Name" Type="String" />
                <asp:Parameter Name="Gender" Type="String" />
                <asp:Parameter Name="City" Type="String" />
            </InsertParameters>
        </asp:SqlDataSource>

    </div>
    </form>
</body>
</html>

推荐答案

ConnectionStrings:DB1ConnectionString %>\"

DeleteCommand=\"DELETE FROM [tblEmployee] WHERE [EmployeeId] = @original_EmployeeId AND [Name] = @original_Name AND [Gender] = @original_Gender AN D (([City] = @original_City) OR ([City] IS NULL AND @original_City IS NULL))\"

InsertCommand=\"INSERT INTO [tblEmployee] ([EmployeeId], [Name], [Gender], [City]) VALUES (@EmployeeId, @Name, @Gender, @City)\"

OldValuesParameterFormatString=\"original_{0}\"

SelectCommand=\"SELECT * FROM [tblEmployee]\"

UpdateCommand=\"UPDATE [tblEmployee] SET [Name] = @Name, [Gender] = @Gender, [City] = @City WHERE [EmployeeId] = @original_EmployeeId AND [Name] = @original_Name AND [Gender] = @orig inal_Gender AND (([City] = @original_City) OR ([City] IS NULL AND @original_City IS NULL))\">
<DeleteParameters>
<asp:Parameter Name=\"original_EmployeeId\" Type=\"Int32\" />
<asp:Parameter Name=\"original_Name\" Type=\"String\" />
<asp:Parameter Name=\"original_Gender\" Type=\"String\" />
< asp:Parameter Name=\"original_City\" Type=\"String\" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name=\"N ame\" Type=\"String\" />
<asp:Parameter Name=\"Gender\" Type=\"String\" />
<asp:Parameter Name=\"City\" Type=\"String\" />
<asp:Parameter Name=\"original_EmployeeId\" Type=\"Int32\" />
<asp:Parameter Name=\"original_Name\" Type=\"String\" />
<asp:Parameter Name=\"original_Gender\" Type=\"String\" />
<asp:Parameter Name=\"original_City\" Type=\"String\" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name=\"EmployeeId\" Type=\"Int32\" />
<asp:Parameter Name=\"Name\" Type=\"String\" />
<asp:Parameter Name=\"Gender\" Type=\"String\" />
<asp:Parameter Name=\"City\" Type=\"String\" />
</InsertParameters>
</asp:SqlDataSource>

</div>
</form>
</body>
</html>
ConnectionStrings:DB1ConnectionString %>" DeleteCommand="DELETE FROM [tblEmployee] WHERE [EmployeeId] = @original_EmployeeId AND [Name] = @original_Name AND [Gender] = @original_Gender AND (([City] = @original_City) OR ([City] IS NULL AND @original_City IS NULL))" InsertCommand="INSERT INTO [tblEmployee] ([EmployeeId], [Name], [Gender], [City]) VALUES (@EmployeeId, @Name, @Gender, @City)" OldValuesParameterFormatString="original_{0}" SelectCommand="SELECT * FROM [tblEmployee]" UpdateCommand="UPDATE [tblEmployee] SET [Name] = @Name, [Gender] = @Gender, [City] = @City WHERE [EmployeeId] = @original_EmployeeId AND [Name] = @original_Name AND [Gender] = @original_Gender AND (([City] = @original_City) OR ([City] IS NULL AND @original_City IS NULL))"> <DeleteParameters> <asp:Parameter Name="original_EmployeeId" Type="Int32" /> <asp:Parameter Name="original_Name" Type="String" /> <asp:Parameter Name="original_Gender" Type="String" /> <asp:Parameter Name="original_City" Type="String" /> </DeleteParameters> <UpdateParameters> <asp:Parameter Name="Name" Type="String" /> <asp:Parameter Name="Gender" Type="String" /> <asp:Parameter Name="City" Type="String" /> <asp:Parameter Name="original_EmployeeId" Type="Int32" /> <asp:Parameter Name="original_Name" Type="String" /> <asp:Parameter Name="original_Gender" Type="String" /> <asp:Parameter Name="original_City" Type="String" /> </UpdateParameters> <InsertParameters> <asp:Parameter Name="EmployeeId" Type="Int32" /> <asp:Parameter Name="Name" Type="String" /> <asp:Parameter Name="Gender" Type="String" /> <asp:Parameter Name="City" Type="String" /> </InsertParameters> </asp:SqlDataSource> </div> </form> </body> </html>


这篇关于获取错误SelectedValue无效,因为它在项目列表中不存在。参数名称:运行时的值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆