Silverlight:Canvas溢出

时间:2009-08-04 10:37:35

标签: silverlight canvas overflow stackpanel clipping

我创建了一个Canvas,在其中我放置了一个StackPanel。 StackPanel是水平的,它接受一个缩略图像列表。画布有固定的大小。当我放置比Canvas宽度更多的缩略图时,StackPanel应该从Canvas溢出,所以我可以将它移动到当前缩略图的中心。

一切正常,只有StackPanel的溢出才可见!有没有办法隐藏它?或者整个方法是错误的?

这是截图。画布是红色框。 stackpanel是蓝色半透明的。

http://www.netpalantir.it/static/sl_canvas_overflows.jpg

谢谢!

1 个答案:

答案 0 :(得分:20)

由于Canvas具有固定大小,因此您可以使用clipping。基本上你必须这样做:

<Canvas Width="400" Height="300">
    <Canvas.Clip>
            <RectangleGeometry Rect="0, 0, 400, 300"/>
    </Canvas.Clip>
    <!-- your StackPanel here -->
</Canvas> 

以下是关于该主题的一些有用的帖子:

Clipping in Silverlight

Cropping or Clipping in Silverlight