Событие RowsAdded примерно эквивалентно, но вы можете столкнуться с проблемами производительности, используя это событие для доступа к строкам из-за состояния общей памяти , которое оно использует. По сути, это схема, в которой DataGridView пытается минимизировать объем памяти, разделяя некоторое состояние, когда это возможно, между строками до тех пор, пока не получит доступ к одной из совместно используемых строк, что приводит к тому, что он не разделяет состояние (память и возможное снижение производительности) , Многое было оптимизировано, но по той или иной причине я столкнулся с проблемами при использовании этого события.
Так что, если RowsAdded работает для вас без снижения производительности, отлично. Если нет, у вас еще есть много вариантов. Вы можете наследовать от DataGridViewCell и DataGridView для добавления пользовательских типов ячеек (столбцов) в сетку. Вероятно, это самый сложный способ настройки DataGridView ... но он позволит практически любые манипуляции с ячейками, которые вы захотите.
Событие CellPainting дает вам возможность рисовать конкретную ячейку, если вы хотите, чтобы вы что-то нарисовали с помощью GDI + (System.Drawing) перед отображением. Также есть событие CellFormatting , которое также дает вам специальные аргументы событий, но я никогда не использовал его, поэтому я не уверен, имеет ли место проблема состояния общей памяти (обычно для события рисования это не).
НТН,
Ричард