gpt4 book ai didi

c# - 为什么 ItemContainerGenerator.ContainerFromIndex() 返回 null 以及如何避免这种行为?

转载 作者:可可西里 更新时间:2023-11-01 07:43:20 25 4
gpt4 key购买 nike

我正在使用这个片段来分析我在数据网格上选择的行。

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,但这并不能帮助我猜测如何获得所需的值。

如何扫描所有行?还有其他办法吗?

更新

here 所述,我正在使用此片段读取 CheckBox .所以我根本不能使用绑定(bind)或 ItemSource 除非我改变了很多东西。而我不能。我在做代码维护。

最佳答案

试试这个,

DataGridRow row = (DataGridRow)grid.ItemContainerGenerator.ContainerFromIndex(index);
if (row == null)
{
grid.UpdateLayout();
grid.ScrollIntoView(grid.Items[index]);
row = (DataGridRow)grid.ItemContainerGenerator.ContainerFromIndex(index);
}

关于c# - 为什么 ItemContainerGenerator.ContainerFromIndex() 返回 null 以及如何避免这种行为?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10591391/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com