AdvancedDataGridView 排序和筛选不起作用

Posted

技术标签:

【中文标题】AdvancedDataGridView 排序和筛选不起作用【英文标题】:AdvancedDataGridView Sort and Filter not working 【发布时间】:2021-12-30 05:12:49 【问题描述】:

我有 AdvanceDataGridView "customerTransactionDGV,数据源 = customersTransactionsBindingSource。

我正在使用以下 LINQ 代码更改 CustomerComboBox 的 SelectionChangeCommitted 事件中的数据源。

this.customersTransactionsBindingSource.DataSource = dbContext.CustomersTransactions.Where(t => t.CustomerId.Equals(customerId)).ToList();
this.customersTransactionsTableAdapter.Fill(this.akDbDataSet.CustomersTransactions); 

在该过滤器和排序数据网格视图之后不起作用。

删除第一行代码使其工作,但我需要这一行来填充 datagridview 与在 CustomerComboBox 中选择的单个用户的事务。

【问题讨论】:

【参考方案1】:

这行代码:

this.customersTransactionsTableAdapter.Fill(this.akDbDataSet.CustomersTransactions); 

显然是从数据库中下载所有客户交易。如果是真的,不要这样做

打开你的DataSet,找到CustomersTransactions TableAdapter,右击它,选择“Add Query”,然后输入:

SELECT * FROM CustomersTransactions WHERE CustomerId = @custId

称之为 FillByCustomerId(getdataby 也一样)

现在在您的代码中,不理会绑定源,停止更改其数据源(其数据源应设置为,并保持为this.akDbDataSet.CustomersTransactions)并调用:

this.customersTransactionsTableAdapter.FillByCustomerId(this.akDbDataSet.CustomersTransactions, customerId); 

【讨论】:

以上是关于AdvancedDataGridView 排序和筛选不起作用的主要内容,如果未能解决你的问题,请参考以下文章

MySQL 5.6 Index Condition Pushdown

2017年双色球中奖号码

插入排序(直接插入排序希尔排序);交换排序(冒泡排序快速排序);选择排序(简单选择排序堆排序);归并排序和基数排序;基于关键词比较的排序算法下界分析

九种经典排序算法详解(冒泡排序,插入排序,选择排序,快速排序,归并排序,堆排序,计数排序,桶排序,基数排序)

冒泡排序,快速排序,归并排序,插入排序,希尔排序,堆排序,计数排序,桶排序,基数排序

常见排序算法的实现(归并排序快速排序堆排序选择排序插入排序希尔排序)