您好我需要一个快速的解决方案来使用Winforms DataGridView控件进行过滤/排序,就像在Excel中一样。
我已经回顾了这个领域的现有帖子,但似乎都没有满足我的需求。
我手动填充DataGridView - 没有数据绑定
答案 0 :(得分:6)
DataGridView列已经支持排序。
我将使用您的数据填充DataTable,然后将DataGridView绑定到myDataTable.DefaultView。
您可以通过设置myDataTable.DefaultView.RowFilter来过滤显示的行。
您可以将文本框和/或组合框放在DataGridView上方,并在输入/选择更改时更新myDataTable.DefaultView.RowFilter。
答案 1 :(得分:5)
如果您正在寻找类似过滤功能的Excel,请查看以下文章: http://msdn.microsoft.com/en-us/library/aa480727.aspx
答案 2 :(得分:1)
答案 3 :(得分:0)
为什么不使用廉价的第三方组件?即使你买它,最终它可以真正省钱。 This DataGridView alternative with autofilter工作速度非常快,未绑定模式是其主要工作模式。另外,它支持Excel风格的AutoFilter。
答案 4 :(得分:-1)
Microsoft has created a sample project(针对VB和C#),其中展示了如何创建所谓的“自动过滤器”插件。我个人不喜欢它,因为它只允许精确过滤,这样产品和客户才能使用,打开未执行价格>某些值的发票
排序使用以下方法实现:
foreach (DataGridViewColumn column in MyDataView.Columns)
{
column.SortMode = DataGridViewColumnSortMode.Automatic;
}
在网格具有列的情况下执行此操作,如果在绑定后自动创建列…