0

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

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

4

1 回答 1

3

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

于 2011-01-21T21:31:05.337 回答