这是我想要实现的场景。我的表单上有一个DataGrid控件。我使用XCeed Data Grid for .Net作为我的选择控制。我通过DataTable作为DataSource来驱动DataGrid。 Grid允许我按列排序数据非常酷。同样的数据也被绘制在Chart控件上。这样,您可以将数据看作表格和图表。
我想知道的是能够通过单击列对网格中的数据进行排序,然后查看图表上更新的新排序数据。一般来说,你会怎么做这样的事情?你如何从gridview contorl中获取 back 的排序数据?告诉我如何使用XCeed Grid控件完成的额外要点:)
谢谢!
答案 0 :(得分:0)
对网格的排序事件执行以下操作..或每当
//get data w/ sort expression
DataTable dt = (DataTable)gridview1.DataSource;
//bind sorted data to another control
chartcontrol.datasource = dt.DefaultView.ToTable();
chartcontrol.databind();
//add sorted ids to session to get crazy with
if (dt != null)
{
StringBuilder sb = new StringBuilder();
for (int i = 0; i < dt.Rows.Count; i++)
{
sb.Append(dt.DefaultView[i]["ID"].ToString() + ",");
}
if (sb.Length > 0)
sb.Remove(sb.Length - 1, 1);
Session["SortedIDs"] = sb.ToString();
}