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         }
  • 相关阅读:
    Spring--IOC--AOP
    SpringMVC
    elasticsearch为什么检索快?
    linux下无法启动webdriver问题
    python 日志组件
    纯js脚本操作excel
    箭头函数
    Vue与React对比
    Vue Router 路由懒加载
    Vue Router 路由守卫:完整的导航解析流程
  • 原文地址:https://www.cnblogs.com/YangDengmeng/p/5132637.html
Copyright © 2011-2022 走看看