c# gridview选中的行ID

怎么获取gridview中选中行的ID啊?List<KeyValuePair<string,DataRow>>currentRows=newList<KeyValuePa... 怎么获取gridview中选中行的ID啊?
List<KeyValuePair<string, DataRow>> currentRows = new List<KeyValuePair<string, DataRow>>();
currentRows.Clear();
我这样就全部清除了,我只想清除选中行的数据,请高手帮个忙,谢谢
展开
 我来答
xiangjuan314
推荐于2018-05-10 · TA获得超过3.3万个赞
知道大有可为答主
回答量:2.9万
采纳率:0%
帮助的人:2814万
展开全部
获取GridView中RowCommand的当前索引行 前台添加一模版列,里面添加一个LinkButton。前台 (如果在后台代码中用e.CommandArgument取值的话前台代码就必须在按钮中设置CommandArgument的值,值为绑定的数据库字段
<asp:TemplateField HeaderText="操作">
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server" CommandName="QianRu"
CommandArgument='<%# Eval("Id") %>'>签入</asp:LinkButton>
<asp:LinkButton ID="LinkButton2" runat="server" CommandName="QianChu">签出</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>

后台
在GridView里已经设置了LinkButton为事件处理按钮,将通过以下方法获取索引
protected void gv_Company_RowCommand(object sender, GridViewCommandEventArgs e){
if (e.CommandName == "QianRu")
{ //取ID的值方法一
GridViewRow drv = ((GridViewRow)(((LinkButton)(e.CommandSource)).Parent.Parent)); //此得出的值是表示那行被选中的索引值
inf id=Convert.ToInt32(GridView1.DataKeys[drv.RowIndex].Value); //此获取的值为GridView中绑定数据库中的主键值

//取ID的值方法二
GridViewRow drv = ((GridViewRow)(((LinkButton)(e.CommandSource)).Parent.Parent)); //此得出的值是表示那行被选中的索引值
//此获取的值为GridView中绑定数据库中的主键值,取值方法是选中的行中的第一列的值,drv.RowIndex取得是选中行的索引
int id = Convert.ToInt32(GridView1.Rows[drv.RowIndex].Cells[0].Text);

//取ID的值方法三
//因为在客户端中就已经将LinkButton的CommandArgument与主键Id给绑定了所以在此可以直接用e.CommandArgument得出主键ID的值
int id = Convert.ToInt32(e.CommandArgument.ToString());
}
}
TableDI
2024-07-18 广告
`VLOOKUP` 匹配出错误的数据通常是由于以下几个原因:1. **查找值错误**:输入的查找值与数据源中的值不匹配,可能是因为拼写错误、大小写不一致或存在不可见的字符。2. **查找区域设置错误**:查找区域的首列必须包含要查找的值,且... 点击进入详情页
本回答由TableDI提供
lljaccp
2010-03-02 · 超过17用户采纳过TA的回答
知道答主
回答量:88
采纳率:0%
帮助的人:31.9万
展开全部
//不等于1时可以删除
IList<string> selectObj = this.FSLGridView1.GetSelectedKeys();
string flagDel = "0";
if (selectObj != null) {
for (int i = 0; i < selectObj.Count; i++) {
if (tblsysNotify.loadDataSet_NH(selectObj[i].ToString()).State != Convert.ToInt32("1")) {
tblsysNotify.delete_NH(selectObj[i].ToString());
flagDel = "1";
} else {
flagDel = "2";
break;
}
}
if (flagDel == "1") {
Utinity.ClientScriptHelper.WriteAlert(this, "删除成功!");
this.FSLGridView1.DataBind();
return;
}
if (flagDel == "2") {
Utinity.ClientScriptHelper.WriteAlert(this, "删除不成功,启用状态不能删除!");
this.FSLGridView1.DataBind();
return;
}

this.FSLGridView1.DataBind();
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友1a97735
推荐于2016-11-07
知道答主
回答量:8
采纳率:0%
帮助的人:0
展开全部
这个可以取到你选中行的数据库的编号
string id = GridView1.DataKeys[Convert.ToInt32(e.CommandArgument)].Value.ToString();
然后你可以通过编号直接删除就可以了
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
seaboy1120
2010-03-02 · 超过32用户采纳过TA的回答
知道答主
回答量:140
采纳率:0%
帮助的人:90.7万
展开全部
当你选中某一行的时候,你可以得到这行的行号。用行号指定该行就可以删除了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
BRUCE岳
2010-03-02 · 超过10用户采纳过TA的回答
知道答主
回答量:150
采纳率:0%
帮助的人:49万
展开全部
gridview getall()
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式