我在程序采用的是分页方式处理DataView列表的,如果不把需要排序的值传到SQL语句的话,翻到下页排序仍不起作用.因此我在DataView的事件里使用下面的事件:
private void dg_LisMouseUp(object sender, System.Windows.Forms.MouseEventArgs e)
{
DataGrid.HitTestInfo hti = dg_List.HitTest(e.X, e.Y);
if (e.Button == MouseButtons.Left && (hti.Type == System.Windows.Forms.DataGrid.HitTestType.ColumnHeader))
{
MessageBox.Show(dt.DefaultView.Sort);
}
}但是这句:MessageBox.Show(dt.DefaultView.Sort);始终只能得到没有单击列头前的值,而不是最新变化后的值,也就是刚好慢了半拍.这个问题该如何处理?谢谢!
private void dg_LisMouseUp(object sender, System.Windows.Forms.MouseEventArgs e)
{
DataGrid.HitTestInfo hti = dg_List.HitTest(e.X, e.Y);
if (e.Button == MouseButtons.Left && (hti.Type == System.Windows.Forms.DataGrid.HitTestType.ColumnHeader))
{
MessageBox.Show(dt.DefaultView.Sort);
}
}但是这句:MessageBox.Show(dt.DefaultView.Sort);始终只能得到没有单击列头前的值,而不是最新变化后的值,也就是刚好慢了半拍.这个问题该如何处理?谢谢!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货