我有一个代表异步结果的类。将有一个公开的布尔依赖属性,称为“IsCalculating”。如果该值为真,我希望可视化器显示模板 A - 这将是一个“正在处理...”图像。当处理在后台线程上异步完成时,它将将该属性更新为 False,此时我希望 WPF 可视化器自动收到通知并切换到模板 B,它将显示完成的结果。
是否有可能做到这一点?
我有一个代表异步结果的类。将有一个公开的布尔依赖属性,称为“IsCalculating”。如果该值为真,我希望可视化器显示模板 A - 这将是一个“正在处理...”图像。当处理在后台线程上异步完成时,它将将该属性更新为 False,此时我希望 WPF 可视化器自动收到通知并切换到模板 B,它将显示完成的结果。
是否有可能做到这一点?
是的,这绝对是可能的。最简单的选项可能是根据需要仅使用DataTrigger来切换两个“模板”的可见性。但是,还有其他选项,例如使用VisualStateManager来指定单独的状态(以及如何在它们之间转换)。