我创建了一个 Canvas ,并在其中放置了一个StackPanel。 StackPanel是水平的,它接受缩略图图像的列表。 Canvas 具有固定的大小。当我放置的缩略图多于Canvas宽度不能容纳时,StackPanel应该从Canvas溢出,因此我可以将其移动到当前缩略图的中心。
一切正常,只有,StackPanel的溢出是可见的!有没有办法隐藏它?还是整个方法都不对?
这是屏幕截图。 Canvas 是红色框。堆栈面板为蓝色半透明。
http://www.netpalantir.it/static/sl_canvas_overflows.jpg
谢谢!
最佳答案
由于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
关于Silverlight: Canvas 溢出,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1226777/