У меня есть DataGridView в моем приложении C #.Используя конструктор, я установил AlternatingRowsDefaultCellStyle
, а также свойства DefaultCellStyle
на самом DGV.Оба этих стиля имеют значение заполнения 0, 0, 5, 0
.Я не установил никаких пользовательских стилей ни для одного из столбцов DGV из меню Edit Columns
в надстройке задач DataGridView.
В DGV есть один столбец, представляющий собой столбец изображения, который я рисую маленькимграфик для каждой строки.Я хотел бы удалить заполнение из всех ячеек в этом столбце, чтобы к ячейке не применялось заполнение, которое оставляет пробелы в конце графика.
Каждая из следующих попыток не удаляетсязаполнение из любых ячеек в столбце, но также не выдает никаких исключений.
// first attempt
// taken from http://social.msdn.microsoft.com/Forums/eu/winforms/thread/a9227253-8bb4-429a-a700-8a3a255afe4d
deviceGrid.Columns["GProduction"].DefaultCellStyle.Padding = new Padding(0);
// second attempt
DataGridViewCellStyle style = deviceGrid.Columns["Graph"].DefaultCellStyle; // also tried Clone()
style.Padding = new Padding(0);
deviceGrid.Columns["GProduction"].DefaultCellStyle = style;
// third attempt
DataGridViewColumn col = deviceGrid.Columns["Graph"];
DataGridViewImageCell icell = new DataGridViewImageCell();
icell.Style.Padding = new Padding(0);
col.CellTemplate = icell;
Я подозреваю, что, возможно, заполнение DefaultCellStyle
из самого DataGridView переопределяет стиль ячейки по умолчанию, который я пытаюсьустановить для столбца, но если это так, что мне нужно сделать, чтобы предотвратить это?
РЕШЕНИЕ:
После перехода по ссылке jmh_gr я обнаружил, что проблема заключалась в том, что DefaultCellStyle
для самого DataGridView наследуется LAST в ячейке, поэтому мне пришлось удалить заполнение из свойств DGV и применить его ко всем столбцам, кроме того, который я не хотел заполнятьна.