gpt4 book ai didi

wpf - ItemContainerGenerator.ContainerFromItem() 返回 null?

转载 作者:行者123 更新时间:2023-12-03 08:32:50 29 4
gpt4 key购买 nike

我有一些奇怪的行为,我似乎无法解决。当我遍历 ListBox.ItemsSource 属性中的项目时,我似乎无法获取容器?我期待看到 ListBoxItem 返回,但我只得到 null。

有任何想法吗?

这是我正在使用的代码:

this.lstResults.ItemsSource.ForEach(t =>
{
ListBoxItem lbi = this.lstResults.ItemContainerGenerator.ContainerFromItem(t) as ListBoxItem;

if (lbi != null)
{
this.AddToolTip(lbi);
}
});

ItemsSource 当前设置为 Dictionary 并且确实包含许多 KVP。

最佳答案

我在这个 StackOverflow 问题中发现了一些更适合我的情况的东西:

Get row in datagrid

通过在调用 ContainerFromItem 或 ContainerFromIndex 之前放入 UpdateLayout 和 ScrollIntoView 调用,您可以实现 DataGrid 的那部分,这使得它可以返回 ContainerFromItem/ContainerFromIndex 的值:

dataGrid.UpdateLayout();
dataGrid.ScrollIntoView(dataGrid.Items[index]);
var row = (DataGridRow)dataGrid.ItemContainerGenerator.ContainerFromIndex(index);

如果您不希望 DataGrid 中的当前位置发生变化,这对您来说可能不是一个好的解决方案,但如果没问题,它无需关闭虚拟化即可工作。

关于wpf - ItemContainerGenerator.ContainerFromItem() 返回 null?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6713365/

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