Формат значения DataGridView - PullRequest
       11

Формат значения DataGridView

0 голосов
/ 17 марта 2010

У меня есть DataGridView, который заполняется из таблицы в базе данных SQL Server. Один из его столбцов - price.

Тип столбца в DGV автоматически устанавливается как десятичный.

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

Как я могу это сделать?

DGV.Item("price", 0).Value = "none" не работает из-за десятичного типа ячейки.

Ответы [ 2 ]

0 голосов
/ 17 марта 2010

вместо всего этого используйте свойство выражения datacolumn.

Если вы просто хотите изменить способ отображения данных (и это звучит так, как вы хотите), подключите событие CellFormatting. Вот общая идея (код не проверен):

private void dgv_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
    if (some_condition(e.ColumnIndex, e.RowIndex)) {
        e.Value = "none";
        e.FormattingApplied = true;
    }
}
0 голосов
/ 17 марта 2010

Посмотрите на реализацию IFormatProvider & ICustomFormatter ...

Затем в DGV вы можете присвоить его формату столбца через ColumnFormatProvider.

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