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