wpf resize wpf-controls zoom viewbox

WPF. ¿Cómo mostrar solo una parte del lienzo grande?



resize wpf-controls (1)

Si trabajas con Pinceles, es posible que desees echar un vistazo a Viewbox y Viewport en WPF

Editar: Me acabo de dar cuenta de que Viewbox y Viewport se utilizan para Pinceles. Esto no es realmente apropiado en su situación. Lo busqué y creo que le gustará la propiedad Clip en UIElement.

Como Canvas es también un UIElement, puede usar la propiedad Clip para simular una ventana en su Canvas.

Haga clic aquí para algunos tipos simples de Geometría

Creo que sería suficiente con un RectangleGeometry

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

Editar # 2:

Hehe ok ... si quieres que se muestre tu total Canvas, solo que más pequeño, perheyes que deberías echarle un vistazo y LayoutTransform . Luego use ScaleTranform para cambiar el tamaño de su Canvas;).

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

Ajusta los parámetros hasta que recibas el efecto deseado;)

Digamos que tengo un lienzo definido para ser 1000x1000 grande. ¿Es posible mostrar solo una parte de 100x100 en una Viewbox (o un rectangel)?

Cualquier ayuda es apreciada .....