В vb.net, как отсортировать столбец таблицы данных с цифрами и текстом в заголовке столбца, нажмите - PullRequest
1 голос
/ 13 февраля 2012

Кажется, что при щелчке заголовка столбца таблицы данных столбец будет автоматически отсортирован по типу столбца.У меня есть столбец, показывающий некоторые цифры.Если тип столбца - строка, он сортирует «1», «20», «3» на «1», «20», «3».Если столбец типа double, он сортируется по «1», «3», «20», что является результатом, который я хочу.Однако в числах могут быть некоторые ошибки, и сообщения об ошибках (текст) будут отображаться в ячейке вместо цифр.Поэтому я не могу установить тип столбца как double.Я хочу игнорировать эти сообщения об ошибках и отсортировать все числа.Как я могу это сделать?

Кроме того, мне нужно добавить несколько цветов фона для разных строк в datagridview.Таким образом, в событии щелчка заголовка столбца я вызываю Sub bkgColor для достижения этой цели.Мой вопрос заключается в том, как я могу переопределить метод сортировки в этом событии?

    Private Sub DataGridView1_ColumnHeaderMouseClick(sender As Object, e As System.Windows.Forms.DataGridViewCellMouseEventArgs) Handles DataGridView1.ColumnHeaderMouseClick
    Try

        bkgColor(DataGridView1) 'A Sub used to add background colors to different rows in datagridview
    Catch
        StatusUpdate("Unable to sort datagrid view", True)
    End Try

End Sub

1 Ответ

0 голосов
/ 13 февраля 2012

Вы задаете два разных вопроса.
Для первого: посмотрите на «Нулевое значение» DefalutCellStyle: не помещайте текст, если вы получаете нулевое значение.
По второму вопросу: вместо того, чтобы щелкать заголовки столбцов, создайте ContextMenuStrip и назначьте его сетке для достижения того же результата: не нужно переопределять и делать проще;)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...