我正在尝试为 WPF 的 UserControls
(实际上是更通用的 FrameworkElement
)添加淡入效果(动画)。
如果我让 Loaded
事件触发初始的淡入效果,则有时淡入效果会在 UserControl 显示之前就已经开始。结果就一团糟了。例如,如果 UserControl 在 Loaded 事件处理程序中执行某些消耗时间的操作(几分之几秒),例如执行查询,则会发生这种情况。
所以,我需要处理 FrameworkElement/UserControl 在内容渲染后触发的某个事件,然后再开始淡入效果。 System.Windows.Window
有一个 ContentRendered
事件,但是 UserControl 没有。那么,当 FrameworkElement(或 UserControl)被渲染后会触发哪个事件呢?
IsLoaded
添加到 if 语句中 - Michael Bernhard