wpf - FrameworkElement.Loaded 事件如何与虚拟化配合使用?

标签 wpf silverlight xaml winrt-xaml

每个 FrameworkElement 都有一个 Loaded 事件,该事件在以下情况下触发:

the tree is not only built and initialized, but layout has run on it, data has been bound, it's connected to a rendering surface (window), and you're on the verge of being rendered. When we reach that point, we canvas the tree by broadcasting the Loaded event, starting at the root. This event corresponds to the IsLoaded property.

当树段/元素在屏幕外虚拟化、出现在屏幕上、一次又一次跑出屏幕以及稍后再次出现时,它们的预期行为是什么?

我希望该事件不会触发两次,因此不会再次出现在屏幕上,但我不清楚第一次触发的时间。

卢克

最佳答案

嗯,这很奇怪,可能是线程问题阻止了我的调试器写入输出(?),但是我用来对元素应用随机抖动的附加属性在滚动时一次又一次触发,因此每次都会调用加载的事件时间。

Anatoliy 在评论中做出了回答,所以我会请他发布答案并领取奖品。

关于wpf - FrameworkElement.Loaded 事件如何与虚拟化配合使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17677446/

相关文章:

c# - 如何更改文件扩展名的默认图标?

wpf - 带有移动向前/向后按钮的自定义列表框

.net - Silverlight 限制/限制列表

.net - 如何构建 'flippable' 应用程序?

c# - ScrollViewer 不适用于 wpf 中的网格

c# - WPF 列表框与复选框多重检查

silverlight - 使用mvvm的Silverlight Response.Redirect()

c# - 如何使用 C# 在 switch-case 条件下使用当前 case 语句的值跳转到另一个 case 语句

wpf - 存储用作 WPF 应用程序图标的图像的推荐方法是什么?

c# - wpf窗体出现后运行程序