[英]set last row of a datagridview not sortable (always on bottom)
我有一個可排序的DatagridView,其摘要最后一行包含一些列的總和,我希望將此摘要行始終作為datagridView的最后一行(底部)。
目前,當我對datagridView的列進行排序時,摘要行也會排序,我不希望這樣。 我想保持DatagridView的最后一行(摘要行)不可排序。
有辦法嗎?
我找到了一個解決方案:
我以這種方式重載了sortcompare方法:
private void grid_SortCompare(object sender, DataGridViewSortCompareEventArgs e)
{
try
{
if (e.RowIndex1 == this.dataGridView1.Rows.Count -1)
e.Handled = true;
if (e.RowIndex2 == this.dataGridView1.Rows.Count - 1)
e.Handled = true;
return;
}
catch (Exception ex)
{
ex.ToString();
}
}
您可以向數據表添加列,並將所有非摘要記錄的值設置為0.將摘要記錄值設置為1,然后對“摘要”列進行排序,然后對其他列進行排序。
這可能在內存中表現不佳,因此如果可能,您可能希望在SQL查詢中執行此操作,具體取決於您使用的數據庫。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.