2009-08-24 2 views

ответ

6

Если вы работаете с кистями, вы можете захотеть взглянуть на Viewbox and Viewport in WPF

Edit: Я просто понял, что Viewbox и Viewport используются для Кисти Это не очень удобно в вашей ситуации. Я просмотрел его, и я думаю, вам понравится свойство Clip на UIElement.

С Canvas также UIElement, вы можете использовать свойство клипа для имитации окна просмотра на вашем холсте ..

Click here for some simple Geometry types

Я думаю, что вы бы достаточно с RectangleGeometry

<Canvas> 
    <Canvas.Clip> 
     <RectangleGeometry Rect="50,50,25,25" /> 
    </Canvas.Clip> 
</Canvas> 

Редактировать # 2:

Хе-хе-хе .. если вы хотите, чтобы ваш общий холст отображался, только меньшие, перехички, вы должны взглянуть и LayoutTransform. Затем используйте ScaleTranform, чтобы изменить размер холста;).

<Canvas> 
    <Canvas.LayoutTransform> 
     <ScaleTransform CenterX="0" CenterY="0" ScaleX="0.5" ScaleY="0.5" /> 
    </Canvas.LayoutTransform> 
</Canvas> 

Tweak параметров, пока вы не получите желаемый эффект;)

+0

Viewport это именно то, что я хочу. К несчастью, такого свойства для холста нет. Как я могу обойти это ограничение? –

+0

Эй Эрик .. Я немного изменил ответ ... Я думаю, что свойство Clip будет более подходящим :) – Arcturus

+0

Спасибо! Клип - это то, что я ищу. Я могу кликнуть, чтобы показать только часть холста ..... НО, но я хочу изменить размер этого отсеченного региона, заполнив его контейнер. Это возможно? –

Смежные вопросы