Silverlight: холст переполнен - PullRequest
       28

Silverlight: холст переполнен

8 голосов
/ 04 августа 2009

Я создал Canvas, и внутри него я разместил StackPanel. StackPanel является горизонтальной, и он принимает список изображений с большими пальцами. Холст имеет фиксированный размер. Когда я помещаю больше миниатюр, чем может вместить ширина холста, предполагается, что StackPanel переполняется из холста, поэтому я могу переместить его в центр текущего эскиза.

Все работает правильно, только переполнение StackPanel видно! Есть ли способ это скрыть? Или весь подход неверен?

Вот скриншот. Холст - красная коробка. Стеклопанель синяя полупрозрачная.

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

Спасибо!

1 Ответ

20 голосов
/ 04 августа 2009

Поскольку Canvas имеет фиксированный размер, вы можете использовать clipping . В основном вы должны сделать:

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

Вот несколько полезных постов по теме:

Отсечение в Silverlight

Обрезка или обрезка в Silverlight

...