Изменить padding для всех ячеек в одном столбце DataGridView

У меня есть DataGridView в моем приложении C#. Используя дизайнер, я установил AlternatingRowsDefaultCellStyle, а также DefaultCellStyle свойства на самом DGV. Оба этих стиля имеют значение padding 0, 0, 5, 0. Я не устанавливал никаких пользовательских стилей ни для одного из столбцов DGV из меню Edit Columns в надстройке DataGridView Tasks.

В 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 наследуется ПОСЛЕДНИМ в ячейке, поэтому мне пришлось удалить padding из свойств DGV и применить его ко всем столбцам, кроме того, на котором я не хотел устанавливать padding.

8
задан Igby Largeman 14 February 2012 в 22:58
поделиться