Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我在youtube上看到的代码不起作用。我需要通过在文本框上使用textchanged事件来执行Rowfilter_C#_Winforms_Ms Access - Fatal编程技术网

C# 我在youtube上看到的代码不起作用。我需要通过在文本框上使用textchanged事件来执行Rowfilter

C# 我在youtube上看到的代码不起作用。我需要通过在文本框上使用textchanged事件来执行Rowfilter,c#,winforms,ms-access,C#,Winforms,Ms Access,我在youtube上看到的代码不起作用。我需要在文本框上使用TextChanged事件进行行筛选。 我使用MS ACCESS作为我的数据库 DataView dv = dt.DefaultView; dv.RowFilter = "Patient_Number LIKE '%" + textBox11.Text + "%'"; 它说找不到列。取自 要形成RowFilter值,请指定列的名称,后跟运算符和要进行筛选的值。该值必须用引号括起来。例如:LastName='Smith' 我编写了一个

我在youtube上看到的代码不起作用。我需要在文本框上使用TextChanged事件进行行筛选。 我使用MS ACCESS作为我的数据库

DataView dv = dt.DefaultView;

dv.RowFilter = "Patient_Number LIKE '%" + textBox11.Text + "%'";
它说找不到列。

取自

要形成RowFilter值,请指定列的名称,后跟运算符和要进行筛选的值。该值必须用引号括起来。例如:LastName='Smith'

我编写了一个小的虚拟Winforms应用程序来测试您的代码,并在名为textbox11的主窗体上放置了一个文本框,就像您的示例一样

在调试模式下运行时,代码

字符串测试=患者编号,如“%+textBox11.Text+%”

当我在textbox11中输入值1234时,计算结果为:患者编号,如“%1234%”。这看起来格式正确,因为当我删除外部双引号时,将文本用作SQL中的WHERE条件,查询的计算结果正确

基于这一发现,我猜测列Patient_Number在DataView对象中不存在。要检查这一点,请在线路上放置一个断点

DataView dv = dt.DefaultView;

并在VisualStudio的监视窗口中查看DataTable对象dt的Columns属性。要使此代码正常工作,您的数据表将需要包含您试图筛选的列,即患者编号。

您应该详细说明您的问题,以便获得最佳答案。