Проблема сортировки с DataGridView в WinForms, когда dgv является DataBinding - PullRequest
0 голосов
/ 12 февраля 2019

My DataGridView sorting method не работает и не будет использоваться с compiler.

Где я использую dgv:

public void LoadData(IList conTable)
    {
        var mtc = new Conversions();
        dgvDetailedTable.DataSource = null; 
        dgvDetailedTable.DataSource = mtc.ToSortableBindingList(conTable);
        dgvDetailedTable.RowTemplate.Height = UiConsts.RowHeight;
    }

Событие сортировки:

private void DgvDetailedTable_Sorted(object sender, EventArgs e)
    {
        var itemsToSelect = new MisTable[_selectedDetailedItems.Length];
        _selectedDetailedItems.CopyTo(itemsToSelect, 0);
        DgvOperations.MarkSelectedItems(dgvDetailedTable, itemsToSelect);
    }

1 Ответ

0 голосов
/ 15 февраля 2019

Я надеюсь, что это поможет, но я не уверен, что вы должны использовать отсортированное событие для него.Вы можете использовать этот код ниже в конце привязки, и когда вы добавляете новый элемент, он снова будет правильно сортироваться.

public void LoadData(IList conTable)
    {
        var mtc = new MisTableConversions();
        dgvDetailedTable.DataSource = null; 
        dgvDetailedTable.DataSource = mtc.ToSortableBindingList(conTable);
        dgvDetailedTable.RowTemplate.Height = UiConsts.RowHeight;
        // Use sorting here
        this.DgvDetailedTable.Sort(this.DgvDetailedTable.Columns["Name"], ListSortDirection.Ascending);
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...