asp.net中如何获取gridview隐藏列的值
gridview中绑定如下pa_id,pa_name,pa_content,pa_score,其中pa_id,pa_score为隐藏列,pa_id在数据库中为主键。在gr...
gridview中绑定如下pa_id,pa_name,pa_content,pa_score,其中pa_id,pa_score为隐藏列,pa_id在数据库中为主键。
在gridview的SelectedIndexChanging事件中可以通过GVList.DataKeys[e.NewSelectedIndex].Value.ToString()获取pa_id的值。
通过GVList.Rows[e.NewSelectedIndex].Cells[3].Text.ToString()却无法获得pa_score的值,怎样才能获得pa_score的值??
急,在线等 展开
在gridview的SelectedIndexChanging事件中可以通过GVList.DataKeys[e.NewSelectedIndex].Value.ToString()获取pa_id的值。
通过GVList.Rows[e.NewSelectedIndex].Cells[3].Text.ToString()却无法获得pa_score的值,怎样才能获得pa_score的值??
急,在线等 展开
2个回答
展开全部
方法1:你可以用联合主键
设置时用:
GVList.DataKeyNames = new string[]{"pa_id","pa_score"};
得到时用
string id=GVList.DataKeys[e.NewSelectedIndex].Values[0].ToString()
string score=GVList.DataKeys[e.NewSelectedIndex].Values[1].ToString()
方法二:用模版列,设置时如下
<asp:TemplateField HeaderText="分数" Visible="false">
<ItemTemplate>
<asp:Label ID="lb_score" runat="server" Text='<%# Eval("pa_score") %>' />
</ItemTemplate>
</asp:TemplateField>
得到如下:
string score= ((Label)this.GVList.Rows[e.NewSelectedIndex].FindControl("lb_score")).Text;
设置时用:
GVList.DataKeyNames = new string[]{"pa_id","pa_score"};
得到时用
string id=GVList.DataKeys[e.NewSelectedIndex].Values[0].ToString()
string score=GVList.DataKeys[e.NewSelectedIndex].Values[1].ToString()
方法二:用模版列,设置时如下
<asp:TemplateField HeaderText="分数" Visible="false">
<ItemTemplate>
<asp:Label ID="lb_score" runat="server" Text='<%# Eval("pa_score") %>' />
</ItemTemplate>
</asp:TemplateField>
得到如下:
string score= ((Label)this.GVList.Rows[e.NewSelectedIndex].FindControl("lb_score")).Text;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询