2011-01-21 55 views
0

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

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

回答

2

在画布中创建一个中间内容控件,将它放置在您想要剪裁的位置,对其设置cliptobounds = true,将您现有的内容控件放在它的内部。