WPF - 在Canvas中剪切ContentControl

时间:2011-01-21 21:21:44

标签: wpf contentcontrol clip

我有一个ContentControl,其内容是一个自定义的FrameworkElement。 FrameworkElement只有一个子节点,它是一个DrawingVisual。基本上,ContentControl是DrawingVisual的容器(包含形状),ContentControl具有用户用来拖动,调整大小和旋转控件的拇指。 ContentControl将添加到Canvas中以进行显示。我想将ContentControl的剪切区域设置为Canvas中的特定区域。但是,当我将ContentControl的Clip属性设置为此区域(Canvas坐标系中指定的RectangleGeometry)时,ContentControl内的DrawingVisual将被剪裁,就像给定区域位于ContentControl的坐标系中一样。

我可以限制用户只在该区域内拖动,但我不想这样做。我希望用户能够在外面拖动,当ContentControl的一部分在外面时,我不希望渲染该部分。我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:3)

在画布中创建一个中间内容控件,将其置于您想要剪辑的位置,在其上设置cliptobounds = true,将现有的contentcontrol放在其中。

相关问题