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
插入排序(直接插入排序希尔排序);交换排序(冒泡排序快速排序);选择排序(简单选择排序堆排序);归并排序和基数排序;基于关键词比较的排序算法下界分析
九种经典排序算法详解(冒泡排序,插入排序,选择排序,快速排序,归并排序,堆排序,计数排序,桶排序,基数排序)