|M| 如何让DataGrid绑定 DataTable里面的某些记录
如Dt内容
year month total
2007 1 11
2006 11 10
2006 12 12
2007 3 15
现在我要DataGrid只绑定里面year为2006年的记录
谢谢
------解决方案--------------------从datatable里生成dataview,然后dataview过滤2006年数据,DataGrid绑定那个dataview
------解决方案--------------------DataView db = dt;
db.RowFilter = "year> =2006 ";
db就是你想要的数据 然后绑定到DataGrid。
OK!
------解决方案--------------------mark
------解决方案--------------------DataTable dt1 = new DataTable();
dt1.Columns.Add( "year ", typeof(int));
dt1.Columns.Add( "month ", typeof(int));
dt1.Columns.Add( "total ", typeof(int));
dt1.Rows.Add(new object[] { 2007, 1, ix });
dt1.Rows.Add(new object[] { 2006, 2, 70 });
dt1.Rows.Add(new object[] { 2007, 3, 100 });
dt1.Rows.Add(new object[] { 2006, 4, 60 });
DataRow[] drow = dt1.Select( "year=2006 ");
DataTable dt3 = dt1.Clone();
foreach(DataRow dr in drow)
{
dt3.Rows.Add(dr);
}
//--这个需要你绑定到dt3才行
------解决方案--------------------楼上的这样的写法似乎会包dr 已经属于另一个datatable的错误,如果我没有记错的话
------解决方案--------------------建议用DataView,它也可以筛选记录的。
------解决方案--------------------直接绑定到dt1不行
要绑定到dt3
------解决方案--------------------何必 简单的问题复杂化呢。!