• 过滤每列一个DataGridView与过滤器上面列可见

  • 本文关于 c#,.net,ado.net
  • CodeGo.net > 过滤每列一个DataGridView与过滤器上面列可见
  •  

    过滤每列一个DataGridView与过滤器上面列可见



    c# .net ado.net
    我有一个相当具体的查询- 我希望能够从数据库中检索数据,在DataGridView中显示它,并允许通过输入每列上面简单的过滤器查询过滤列。 例如:-
      | Foo | Bar     | Baz |
      ------------------------------------|
    Filters | > 10 | 1/1/1980 - 1/1/2009 | Boo |
      | 12 | 1/3/1995   | Boo |
      | 99 | 5/12/2005   | Boo |
          etc.
    
    我想将最好地解决这个问题是有两个DataTable,其中一个作为数据源的DataGridView中(这样我就可以有视图自动生成的列,而不必写一大堆样板插入行自己),这本身由一个单一的行,以保持过滤器和数据库中的数据在下面 CodeGo.net,并且所述第二保持,可以通过编程附加到优先个数据库中的数据。 与该解决方案的问题在于,各列被限制在该列的类型,例如这里富是一个整数,pubs是一个和巴兹是一个字符串。当试图进入文本筛选到foo或bar DataGridView中抛出一个错误,指出cell不能包含文本。 是有可能有一个包含从该表的其余部分的列的类型完全离异类型的行? 另一种解决方案可能是有文本框同步坐在同列相加在网格上方,拆除,调整滚动,但是这似乎是工作的一个量,知道的WinForms我可能会找出3天,这种方法失败壮观,由于微妙的WinForms限制。 解决方案这是不可能的-使用WPF,使用第三方的DataGridView(除非,也许,一个OSS DGV有使用许可)。 目前,它似乎是最好的解决办法可能是将所有数据导入到数据库中的数据表作为字符串(下面的过滤器中的数据是只读的)。然而,这似乎是相当惊人的hackish。 我错过简单吗?我很高兴能证明是错误的,如果它前进的方向! :-)
    本文地址 :CodeGo.net/1482643/
    -------------------------------------------------------------------------------------------------------------------------
    1.我在过去做了这一个,它实际上是一个真正有趣的项目。这个想法基本上是从DataGridViewColumnHeaderCell基类继承,做你自己的画。它会很多事来解释一切的参与,但有来自微软一个真正伟大的文章开始的。我没有在正确的轨道做到这一点,他们究竟是如何做到的,但它。 此外,你应该考虑到的是一个DataTable上有一个DataView的属性 CodeGo.net,它的类型是DataView的。那上有一个RowFilter属性,你过滤掉的行。有没有必要对两个DataTable的。这里有一个如何RowFilter属性的好文章:
    2. 我已经找到了一个项目,该项目允许每列直观的过滤-这满足了我的需求。
    本文标题 :过滤每列一个DataGridView与过滤器上面列可见
    本文地址 :CodeGo.net/1482643/
    1. 查询url文件流
    2. 与String.Format和log.DebugFormat货币
    3. 微软企业库 5 ,设置缓存
    4. 正则表达式C#
    5. 關於計算C#中的加減乘除
    6. 发送前的C#SSL数据流不会停止缓冲
    7. 自定义打印多个datatable
    8. 从我的SqlDataSource在后面的C#。NET中的代码访问数据
    9. C# 做个时钟
    10. 如何获得NHibernate的妥善处理不存在的数据库列

     
    

    Copyright © 2017 CodeGo.net
    http://codego.net/xinwen/ 足球比分网 足球比分 医药招商网 邵阳县新闻