GetAdornerLayer是否为控件及其装饰器返回相同的图层?

时间:2009-07-06 22:33:51

标签: wpf adornerlayer

如果我在控件中调用GetAdornerLayer(control)然后在图层中添加一个装饰器,调用GetAdornerLayer(adorner)会返回同一层吗?我问,因为我们的代码会在控件中添加一个装饰器,然后需要在控件消失时删除该装饰器。你不能在控件的Unloaded事件中调用GetAdornerLayer(control),因为它已经从可视树中删除了,但是GetAdornerLayer(adorner)出现才能工作。

1 个答案:

答案 0 :(得分:0)

GetAdornerLayer(adorner)为装饰者返回AdornerLayer,AdornerLayer是Adorner的父级(不是它装饰的元素)。

此外,在可视树生命周期中它是相同的AdornerLayer,您可以缓存对它的引用。

所有这些都可以在Reflector中验证。