问一个datagrid过滤数据行的问题,谢谢!
代码如下:
string OleDBConnString = @"Data Source = \Syslog.mdb;"
+"Provider=Microsoft.Jet.OLEDB.4.0;";
string SQLQuery = "SELECT * FROM SysLog ;
OleDbConnection cn = new OleDbConnection(OleDBConnString);
try
{
cn.Open();
OleDbCommand cmd = new OleDbCommand(SQLQuery,cn);
OleDbDataAdapter cnAdapter = new OleDbDataAdapter(cmd);
DataSet dataset = new DataSet();
cnAdapter.Fill(dataset,"syslog");
cnAdapter.Dispose();
cn.Close();
DataViewManager dvm = new DataViewManager(dataset);
dvm.DataViewSettings["syslog"].RowFilter = "Priority ='6'"; //Priority 是syslog表中的一个列名
dvm.DataViewSettings["syslog"].RowFilter = "Facility ='128'"; //Facility 是syslog表中的一个列名
dataGrid1.SetDataBinding(dataset,"syslog");
}
catch(Exception ex)
{
MessageBox.Show(ex.ToString());
}
为什么不能实现只显示priority=6和Facility=128的数据呢?
还是会显示所有数据