日期:2014-05-19  浏览次数:20854 次

用RowFilter怎样判断数字的大小
我现在用dataview里的RowFilter做一个搜索功能winform,用的语句是:
DataView   dv   =   new   DataView(ds.Tables[0]);
string   strRowFilter;
strRowFilter   =   "学校   like   '% "   +   textBox1.Text.Trim()   +   "% '   and   ";
strRowFilter   +=   "人数   > ' "   +   Convert.ToInt32(textBox2.Text.Trim())   +   " ' ";
dv.RowFilter   =   strRowFilter;
dataGrid1.DataSource   =   dv;

现在的问题是我在textBox2里输入100,那人数是23的也能被搜到,而我输入5的话,人数是200的也搜不到,好像这玩意是一个一个数比大小来的一样.请问我该怎样解决这样的问题呢,谢谢了

------解决方案--------------------
"人数 > ' " + Convert.ToInt32(textBox2.Text.Trim()) + " ' ";
单引号去掉试试
------解决方案--------------------
多了单引号
------解决方案--------------------
这样试下
strRowFilter += "人数 > " + Convert.ToInt32(textBox2.Text.Trim());

或者是加个验证控件之类的,在保证textBox2输入内容为整数的情况下,这样试下
strRowFilter += "人数 > ' " + textBox2.Text.Trim() + " ' ";

我这里测试没问题的