c# datagridview多选行 怎样获取各行号?

最好能间隔选择...... 最好能间隔选择... 展开
 我来答
学派
2014-04-29 · TA获得超过446个赞
知道小有建树答主
回答量:465
采纳率:100%
帮助的人:256万
展开全部

首先要将标识放在GridView上,可以是DataKeys属性,也可以是某一列某个控件的值,遍历所有行,如果该行的复选框是选择中的,则将这行的标识放入一个集合内,例:

List<int> list = new List<int>();
foreach (ridViewRow in GridView1.Rows)
{
    if(e.Row.RowType==DataControlRowType.DataRow)
    {
        CheckBox cb = e.Row.FindControl("CheckBox1") as CheckBox;
        if (cb !=null && cb.Checked)
        {
            Label lbl = e.Row.FindControl("lblID") as Label;
            if (lbl !=null)
            {
                list.add(Int32.Parse(lbl.Text));
            }
        }
    }
}
list,包含选中行的ID,爱干嘛就干嘛
阳光的雷咩咩
推荐于2017-10-06 · TA获得超过1.4万个赞
知道大有可为答主
回答量:2.3万
采纳率:66%
帮助的人:7717万
展开全部
        //using System.Linq;
        private void button2_Click(object sender, EventArgs e)
        {
            int[] selIndexes = this.dataGridView1.SelectedRows
                .OfType<DataGridViewRow>()
                .Select(x => x.Index)
                .OrderBy(x => x)
                .ToArray();
            foreach (int n in selIndexes)
                MessageBox.Show(n.ToString());
        }
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式