所以我有一个数据网格,其内容全部来自多个网络请求。 rowdetails在展开时还会发送多个Web请求以填充更多信息。
在行详细信息中,有一个Listview,一个列表框,一些布局元素和一些文本块。
数据网格在添加初始数据后快速滚动,但是如果展开4-5行细节,则突然滚动到不稳定的程度。
这是一个已知问题吗?
我可以为每个项目重复使用相同的可视rowdetails元素吗?它仅在选中时显示,并且所有检索到的数据都被缓存,因此不需要在已经查看的元素上重新加载
行不会一次扩展多个行...行详细信息仅在选择项目时显示,并且您一次只能选择一个。问题是,在您选择几个不同的项目,并生成行详细信息对象后,它会变慢。
答案 0 :(得分:0)
我发现了问题。
在行中的详细信息是这个项目:
<Image Source="{Binding Path=PreviewImageUrl, TargetNullValue=Collapsed}" />
PreviewImageUrl为null,对于创建/展开的每个行详细信息项,它会在滚动时抛出(并抑制)图像转换器异常。异常抑制正在减慢滚动速度(因为在扩展10行细节之后,它会在每个滚动事件上抛出10个异常)。至于为什么会发生这种情况,我仍然感到困惑,但至少我现在知道要注意什么!