我们有一个控件,它使用许多不同大小和复杂性的控件来显示大量数据。由于需要布置大量控件,因此可能会出现非常明显的延迟。
我们知道延迟来自 Measure/Arrange 函数,因为我们有一个测试类,它源自一个堆栈面板,它用一些时序代码覆盖它们。
由于滚动条不断改变其范围的副作用,我们不想使用虚拟化,并且我们不想将数据隐藏在扩展器或任何其他折叠控件下,因为客户要求我们将其全部显示在一个长列表中。但是,他们想知道,当延迟发生时,控件实际上是在做某事,某种进度状态。
所以我的问题是 - 是否有某种方法可以创建一个控件,将加载动画显示为装饰器或其他东西,直到其内容实际布局?我很欣赏这可能是不可能的,因为安排/测量也是在 UI 线程上完成的。