gpt4 book ai didi

c# - 使用 TextBox 过滤 Datagridview 行

转载 作者:行者123 更新时间:2023-11-30 14:28:44 27 4
gpt4 key购买 nike

我有一个绑定(bind)的 datagridView,我想使用 TextBox 值过滤它。

我使用了这段代码:

private void ChercheStextBox_TextChanged(object sender, EventArgs e)
{
try
{
((DataTable)dataGridView3.DataSource).DefaultView.RowFilter = string.Format("LibService like '%{0}%'", ChercheStextBox.Text.Trim().Replace("'", "''"));
}
catch
{

}

}

但是即使我使用了相同的代码,这段代码也不会过滤 datagridView

在另一个 datagridView 中,它工作得很好。我不知道在哪里

我的代码有错误吗?

提前致谢。

编辑:

我删除了 try catch 并收到此错误消息:

unable to cast object of type 'system.windows.forms.bindingsource' to type 'system.data.datatable'

我该如何解决?

最佳答案

DataSource 是一种 BindingSource 而不是 DataTable,所以试试这个代码:

private void ChercheStextBox_TextChanged(object sender, EventArgs e)
{
var bd = (BindingSource)dataGridView3.DataSource;
var dt = (DataTable)bd.DataSource;
dt.DefaultView.RowFilter = string.Format("LibService like '%{0}%'", ChercheStextBox.Text.Trim().Replace("'", "''"));
dataGridView3.Refresh();


}

关于c# - 使用 TextBox 过滤 Datagridview 行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28433041/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com