display += Convert.ToString(GridView1.SelectedValue);
发生了'System.InvalidOperationException'类型的异常 System.Web.dll但未在用户代码中处理
其他信息:
必须在GridView“GridView1”上指定数据键,然后才能检索选定的数据键。使用DataKeyNames属性指定数据键。
包含罪魁祸首的GridView1_SelectedIndexChanged的代码段:
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
string display = "Combo=";
int s;
total_cost = 0;
s = GridView1.SelectedIndex;
switch (s)
{
case 0:
bool isInt = int.TryParse(lbl_total_price.Text, out total_cost );
display += Convert.ToString(GridView1.SelectedValue);
lbl_combo_cost.Text = "100";
total_cost += 100;
break;
}
}
答案 0 :(得分:0)
您获得的例外解释了您需要做什么。
必须在GridView“GridView1”上指定数据键,然后才能检索选定的数据键。使用DataKeyNames属性指定数据键。
在GridView中,您必须定义哪个字段(属性)应该作为键。这通常是数据中的标识符(例如ID)属性。您可以使用DataKeyNames
上的GridView
属性:
<asp:GridView ID="GridView1" runat="server"
AutoGenerateColumns="False" DataSourceID="SqlDataSourcemenu"
OnSelectedIndexChanged="GridView1_SelectedIndexChanged" Width="527px"
DataKeyNames="MyId">
此处,MyId
应替换为应作为密钥的属性名称。