Я использую этот фрагмент для анализа строк, выбранных в сетке данных.
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, если «если элемент не реализован», но это не помогает мне понять, как я могу получить желаемое значение.
Как просканировать все строки? Есть ли другой способ?
ОБНОВЛЕНИЕ
Я использую этот фрагмент для чтения CheckBox
, как описано здесь. Так что я вообще не могу использовать привязку или ItemSource
, если только я не изменю много вещей. И я не могу. Я занимаюсь обслуживанием кода.