Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Базы данных под .NET > Строки в DataGridView


Автор: deviLoper 25.3.2006, 02:21
Например, есть в базе поле с типом char(100). Создаем типизированный DataSet и таблице, в которой содержится поле, привязываем DataGridView. При выводе информации из базы все записи в колонке состоят из самого текста записи и пробелов, дополняющих строку до длины 100 символов. Как можно от этого избавиться?

Есть, конечно, вариант в запросе к БД прописать LTRIM(RTRIM(ИмяПоля)) вместо ИмяПоля, но запрос создавался автоматически и не хочется его изменять, так как возможны ошибки при обновлении и удалении записей. Может есть другие решения? Свойство какое-то у колонки поменять?

Автор: -ser- 27.3.2006, 08:37
для этого можно подписаться на евент CellFormatting
Код

private void dataGridView1_CellFormatting( object sender, DataGridViewCellFormattingEventArgs e )
        {
            string s = string.Empty;

            // допустим у нас в 0-вой колонке строки с пробелами
            if( e.ColumnIndex == 0 && ( e.Value != null ) ) 
            {
                s = ( string )e.Value;
                // здесь убираем из s ненужные пробелы и записываем обратно в ячейку
                e.Value = s;
            }
        }

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)