簡體   English   中英

設置datagridview的最后一行不可排序(總是在底部)

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM