在WPF中绘制对子控件的父控件

时间:2014-02-28 19:38:44

标签: c# wpf xaml user-controls

我有一个自定义UserControl,旨在允许个人选择图像的区域。我想让这个控件充当装饰器,可以在子图像上绘制区域选择句柄。

但是,在XAML中将图像添加为UserControl的子图像会将图像呈现在句柄的TOP上,这是我的UserControl中Canvas中的Ellipse对象。

如何强制UserControl的内容在其子项之上呈现?

2 个答案:

答案 0 :(得分:3)

听起来你正在尝试创建一个装饰。看看MSDN adorners overview

但是,您始终只需设置Canvas.ZIndex附加属性,以便在渲染顺序上向上移动。

答案 1 :(得分:0)

最简单的方法是使用Adorner。很简单。

Adorner基本上是UIElement之上的额外ui层。

一个很好的比喻是咖啡桌或餐桌,上面有一块厚厚的玻璃。

如果你不在玻璃上画画,你所看到的就是桌子。一旦你在玻璃上画画,它就显示在桌子的顶部。

如果你想摆脱你画的东西,你只需取下玻璃杯或清洁它。

在这种情况下,玻璃杯将是一个装饰品。