zoukankan      html  css  js  c++  java
  • 获得datagridview选中的对象名称

    文档:获得datagridview选中的对象名称.note
    链接:http://note.youdao.com/noteshare?id=6ea2590fc806dcc9f3e8f72517ff2462&sub=3C9E67AF71964C22ACE38F923B7831F7


    获取选中的项的文本,有2种方式

    1 正向复制 从上向下复制黑3角最终在下方,

    2 反向复制 从下往上复制 黑3角最终在上方,

    这两种复制的最终结果的顺序是不一样的,1是反的,2才是正的,我希望正向复制的结果是从上往下排列的


    clipboard

    i总是从0开始的 ,假设选中了5个项 则 i的索引为 0 1 2 3 4

    结果刚好反掉了(从1到5 这样选中的 注意黑三角在5的左边)

    dgv1.SelectedRows[0].Cells["单词"].Value=what

    dgv1.SelectedRows[1].Cells["单词"].Value=take sth.over

    dgv1.SelectedRows[2].Cells["单词"].Value=back down

    dgv1.SelectedRows[3].Cells["单词"].Value=as

    dgv1.SelectedRows[4].Cells["单词"].Value=article

    clipboard

    反过来选 先选5再选1 结果才是正确的(注意黑三角在1的左边)

    dgv1.SelectedRows[0].Cells["单词"].Value=article

    dgv1.SelectedRows[1].Cells["单词"].Value=as

    dgv1.SelectedRows[2].Cells["单词"].Value=back down

    dgv1.SelectedRows[3].Cells["单词"].Value=take sth.over

    dgv1.SelectedRows[4].Cells["单词"].Value=what

    代码


    private void button2_Click(object sender,EventArgs e) {
        int selCount = dgv1.SelectedRows.Count;
        string[] arr = new string[selCount];
        for (int i = 0; i < dgv1.SelectedRows.Count; i++) {
            arr[i] = $"  dgv1.SelectedRows[{i}].Cells["单词"].Value=" + dgv1.SelectedRows[i].Cells["单词"].Value.ToString();
        }
        MessageBox.Show(string.Join("
    ",arr));
    }

    我希望从上往下选的结果是 反过来选的结果

    这样只用把.SelectedRows[i] 的索引倒过来变成 4 3 2 1 0

    注意黑三角在5的左边

    clipboard

    dgv1.SelectedRows[4].Cells["单词"].Value=article

    dgv1.SelectedRows[3].Cells["单词"].Value=as

    dgv1.SelectedRows[2].Cells["单词"].Value=back down

    dgv1.SelectedRows[1].Cells["单词"].Value=take sth.over

    dgv1.SelectedRows[0].Cells["单词"].Value=what

    private void button2_Click(object sender,EventArgs e) {
        int selCount = dgv1.SelectedRows.Count;
        string[] arr = new string[selCount];
          for (int i = selCount - 1; i > -1; i--) {
            int x = selCount - 1 - i;
            arr[i] = $"  dgv1.SelectedRows[{x}].Cells["单词"].Value=" + dgv1.SelectedRows[x].Cells["单词"].Value.ToString();
        }
        MessageBox.Show(string.Join("
    ",arr));
    }


    2020年12月31日 15:58:55

    下面是发现

    clipboard

    注意结果:从上往下选的 三角形是4 说明是从1开始选的 4结束的,

    得到的结果刚好反了

    clipboard

    string s = ""; foreach (DataGridViewRow item in dgv1.SelectedRows) { s += item.Cells["单词"].Value.ToString() + " "; }

    clipboard

    倒着选 从4开始 1结束 这样结果是正确的

  • 相关阅读:
    Educational Codeforces Round 28 B. Math Show
    Educational Codeforces Round 28 A. Curriculum Vitae
    Codeforces Round #433 (Div. 2, based on Olympiad of Metropolises) D. Jury Meeting
    Codeforces Round #433 (Div. 2, based on Olympiad of Metropolises) C. Planning
    2017 Multi-University Training Contest 2 hdu 6047
    2017 Multi-University Training Contest 2 hdu 6045
    2017 Multi-University Training Contest 1 hdu 6043
    2017 Multi-University Training Contest 1 hdu 6034
    2017 Multi-University Training Contest 1 hdu 6033
    poj 2104主席树求区间第k小
  • 原文地址:https://www.cnblogs.com/xe2011/p/14217401.html
Copyright © 2011-2022 走看看