只是想澄清一个观察。(我似乎无法从谷歌找到直接的答案)。我正在使用装饰器进行一些图像编辑。我的图像既在 an 中ItemsControl
,也作为InkCanvas
.
当GetAdornerLayer()
用于 中的元素时ItemsControl
,我会自动在ItemsTemplate
. 但是,如果我用 进一步向上查看视觉树VisualTreeHelper
,我会发现另一个AdornerLayer
高于所有项目的ItemsControl
. ( theItemsControl
本身就是 a 的孩子Grid
)。另一方面,当访问 的AdornerLayer
子级时,我得到一个位于自身及其子InkCanvas
级之间的装饰层。InkCanvas
因此,在这两种情况下,WPF 似乎总是在内容控件及其子控件之间放置一个装饰层。
真的是这样吗?
TIA。