DataTable 排序后绑定问题
DataView dv = dt.DefaultView;
dv.Sort="ID DESC";
DataGrid1.DataSource = dt;
DataGrid1.DataBind();
----------------------
排序没有任何问题
可是现在 需求是 还要遍历DataTable 才能绑定
DataView dv = dt.DefaultView;
dv.Sort="ID DESC";
DataTable dt = Table.Clone();
DataRow dr;
for (int i=0; i < Table.Rows.Count; i++)
{
dr = dt.NewRow();
dr.ItemArray = Table.Rows[i].ItemArray;
dt.Rows.Add(dr);
}
DataGrid1.DataSource = dt;
DataGrid1.DataBind();
这样绑定后的结果 就不是排序的了为什么啊 要疯了
排序必须在遍历前进行 有没有高人帮我看看 谢谢了
------解决方案--------------------DataTable dt = Table.Clone();
DataRow dr;
for (int i=0; i < Table.Rows.Count; i++)
{
dr = dt.NewRow();
dr.ItemArray = Table.Rows[i].ItemArray;
dt.Rows.Add(dr);
}
DataView dv = dt.DefaultView;
dv.Sort="ID DESC";
DataGrid1.DataSource = dv;
DataGrid1.DataBind();
------解决方案--------------------直接用datagrid控件对ID排序
把AllowSorting属性为true
------解决方案--------------------DataView dv = dt.DefaultView;
dv.Sort="ID DESC";
DataTable dt = Table.Clone();
DataRow dr;
----------这里是给datatable增加新行,建议增加新行后,再进行排序。
for (int i=0; i < Table.Rows.Count; i++)
{
dr = dt.NewRow();
dr.ItemArray = Table.Rows[i].ItemArray;
dt.Rows.Add(dr);
}
---------------------------
DataGrid1.DataSource = dt;
DataGrid1.DataBind();
改为:
DataRow dr;
for (int i=0; i < Table.Rows.Count; i++)
{
dr = dt.NewRow();
dr.ItemArray = Table.Rows[i].ItemArray;
dt.Rows.Add(dr);
}
DataView dv = dt.DefaultView;
dv.Sort="ID DESC";
DataTable dt = Table.Clone();
DataGrid1.DataSource = dv;
DataGrid1.DataBind();
------解决方案--------------------最后绑定DataView,别绑定DataTable