首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AdornerDecorator -它们放置在哪里有什么关系?

AdornerDecorator -它们放置在哪里有什么关系?
EN

Stack Overflow用户
提问于 2012-03-14 05:28:33
回答 1查看 13.6K关注 0票数 11

使用像这样的xaml:

代码语言:javascript
复制
<Grid Name="grid">
        <AdornerDecorator>
        <TextBox Height="23" HorizontalAlignment="Left" Name="textBox1" Width="120" />
        </AdornerDecorator>
</Grid>

WPF Snoop实用程序指出textBox1是AdornerDecorator的子级(如您所料),但AdornerDecorator创建的AdornerLayer也是子级。由于添加到AdornerLayer的自定义装饰器可以显示在文本框之外,因此AdornerLayer的绘图图面也必须延伸到外部(假设是整个窗口)。

那么,AdornerDecorator的放置有什么实际意义(假设我们将UI元素绑定到自定义装饰器,我们将其放置在AdornerLayer中)?我知道AdornerLayer.GetAdorner( textbox1 )将从textbox1获取视觉树中的第一个装饰器层,但它在哪里又有什么关系(因为自定义装饰器被添加到层中,并且自定义装饰器知道它绑定到哪个元素)?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-12-22 03:23:04

简短的答案是,当您开始处理与其他控件(在z索引平面中)重叠的控件时,这很重要,并且您关心特定的装饰层是否显示在重叠控件的顶部。例如,当你使用一个ErrorTemplate时,它的内容会呈现在一个装饰层中,如果你没有在你的应用程序中提供一个<AdornerDecorator> (这意味着你只使用了大多数窗口模板提供的那个),那么你最终可能会发生this

票数 28
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9692457

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档