0

次の値でデータグリッドをバインドしました。Id は Int、Price は int、IsActive は bit です。IsActive の列ヘッダーをクリックすると、IsActive に基づいてデータを並べ替えたいと思います。

Id についても同じことを行い、正常に動作しましたが、IsActive については動作しません。

以下は IsActive フィールドの私のコードです:

 private void dataGridView1_SortCompare(object sender, DataGridViewSortCompareEventArgs e)
    {
        // Try to sort based on the cells in the current column.
        e.SortResult = System.String.Compare(e.CellValue1.ToString(), e.CellValue2.ToString());

        // If the cells are equal, sort based on the ID column. 
        if (e.SortResult == 0 && e.Column.Name != "IsActive ")
        {
            e.SortResult = System.String.Compare(
                dataGridView1.Rows[e.RowIndex1].Cells["IsActive "].Value.ToString(),
                dataGridView1.Rows[e.RowIndex2].Cells["IsActive "].Value.ToString());
        }
        e.Handled = true;
    }

データグリッドビューでブールデータをソートする方法を知りたいです。

4

1 に答える 1