WPF 在渲染期间似乎没有传达可见性信息,因此它没有剔除,因此性能可能很糟糕。所以我对绕过 WPF 的正常渲染管道以用更高效的渲染管道替换它的想法很感兴趣。
例如,给定一个包含控件网格的滚动查看器,我想预先计算网格中控件的位置,以便在给定滚动查看器中的可见区域的情况下仅呈现潜在的可见控件。因此,我将滚动查看器的渲染器替换为传递该可见性信息的渲染器,然后将网格的渲染器替换为使用该可见性信息来剔除完全位于可见区域之外的控件的渲染器。
这可能吗?如果可以,如何实现?
WPF 在渲染期间似乎没有传达可见性信息,因此它没有剔除,因此性能可能很糟糕。所以我对绕过 WPF 的正常渲染管道以用更高效的渲染管道替换它的想法很感兴趣。
例如,给定一个包含控件网格的滚动查看器,我想预先计算网格中控件的位置,以便在给定滚动查看器中的可见区域的情况下仅呈现潜在的可见控件。因此,我将滚动查看器的渲染器替换为传递该可见性信息的渲染器,然后将网格的渲染器替换为使用该可见性信息来剔除完全位于可见区域之外的控件的渲染器。
这可能吗?如果可以,如何实现?