zoukankan      html  css  js  c++  java
  • DataGridView控件绑定数据之后,置顶操作

    一个小小的置顶,就搞了半个小时,还是记录一下吧。

    1.第一个问题就是datatable的插入只能是Insert DataRow,但是获取选中的行,都是DataGridViewRow,不能直接转换。

    找到了以下的解决办法:

    其中dg表示DataGridViewRow。

          DataRow dr = (dg.DataBoundItem as DataRowView).Row;

    2.第二个问题就是因为是绑定数据,不能直接插入到第一行,也不能直接删除,所以必须复制这一行的数据。

    找到了以下解决办法:

             DataRow newDr = datatable.NewRow();
             newDr.ItemArray = dr.ItemArray;

    3.DataGridView选中Rows的问题,selectrows中的index不是按照实际上的行索引号来的,而是根据鼠标选择的先后顺序

    4.贴上置顶的代码

     1         private void ToolStripMenuItem_Top_Click(object sender, EventArgs e)
     2         {
     3             int nCounts = dataGridView_Barcode.SelectedRows.Count;
     4             for (int i = nCounts - 1; i >= 0; i--)
     5             {
     6                 DataGridViewRow dg = dataGridView_Barcode.SelectedRows[i];
     7                 DataRow dr = (dg.DataBoundItem as DataRowView).Row;
     8                 DataRow newDr = datatable.NewRow();
     9                 newDr.ItemArray = dr.ItemArray;
    10                 datatable.Rows.RemoveAt(dataGridView_Barcode.SelectedRows[i].Index);
    11                 datatable.Rows.InsertAt(newDr, 0);
    12                 
    13             }
    14         }
  • 相关阅读:
    Beta 冲刺 (3/7)
    软件产品案例分析(团队)
    Beta 冲刺 (2/7)
    Beta 冲刺1
    第七次作业
    第六次作业(计算器第四步)
    课堂作业二 PAT1025 反转链表
    第五次作业(计算器第三步)
    课堂作业一(16/05/04)
    Calculator(补)
  • 原文地址:https://www.cnblogs.com/ligiggy/p/11208534.html
Copyright © 2011-2022 走看看