Я использую этот фрагмент для анализа строк, которые я выбрал на datagrid.
for (int i = 0; i < dgDetalle.Items.Count; i++)
{
DataGridRow row = (DataGridRow)dgDetalle.ItemContainerGenerator.ContainerFromIndex(i);
FrameworkElement cellContent = dgDetalle.Columns[0].GetCellContent(row);
// ... code ...
}
Цикл выполняется гладко, но при обработке определенных индексов вторая строка выбрасывает нулевое исключение. Документация MSDN гласит, что ItemContainerGenerator.ContainerFromIndex(i)
возвращает null, если "если элемент не реализован", но это не помогает мне угадать, как я могу получить желаемое значение.
Как я могу сканировать все строки? Есть ли другой способ?
UPDATE
Я использую этот фрагмент для чтения CheckBox
, как описано здесь. Поэтому я не могу использовать привязку или ItemSource
вообще, если я не изменю много вещей. И я не могу. Я занимаюсь обслуживанием кода.