zoukankan      html  css  js  c++  java
  • DataGridView和DataTable同步排序

    当对绑定DataTable的DataGridView排序时,DataTable是用其维护的DataView或者DataViewManager实现排序逻辑的,并没有改变DataSource对应的DataTable,所以当我们要获取DataGridView中的排序时,比如用排序后的DataTable打印、导出,就必须常用附加逻辑。

    代码如下

     1         /// <summary>
     2         /// 获取DataGridView绑定的包含排序状态的DataTable
     3         /// </summary>
     4         /// <param name="dgv">绑定DataTable的DataGridView</param>
     5         /// <returns>包含排序状态的DataTable</returns>
     6         public DataTable GetSortDataTable(DataGridView dgv)
     7         {
     8             DataView dv = (dgv.DataSource as DataTable).DefaultView;//得到DataView
     9             if (dgv.SortedColumn != null)//判断是否有排序
    10             {
    11                 dv.Sort = dgv.SortedColumn.DataPropertyName + (dgv.SortOrder == SortOrder.Ascending ? " asc" : " desc");//排序
    12             }
    13             return dv.ToTable();//返回DataTable
    14         }
  • 相关阅读:
    js使用笔记
    rabbit-mq使用官方文档
    tomcat Enabling JMX Remote
    Venom的简单使用
    Random模块
    时间模块
    shulti模块简述
    Python的os模块
    Python压缩及解压文件
    Kali的内网穿透
  • 原文地址:https://www.cnblogs.com/YangDengmeng/p/5132637.html
Copyright © 2011-2022 走看看