2009-08-24 12 views

Répondre

6

Si vous travaillez avec des brosses, vous pouvez jeter un oeil à Viewbox and Viewport in WPF

Edit: Je viens de réaliser que Viewbox et viewport sont utilisés pour Pinceaux Ce n'est pas vraiment approprié dans votre situation. J'ai regardé vers le haut, et je pense que vous aimerez la propriété Clip sur UIElement.

Depuis toile est aussi un UIElement, vous pouvez utiliser la propriété Clip pour simuler une fenêtre sur votre toile ..

Click here for some simple Geometry types

Je pense que vous suffit d'un RectangleGeometry

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

Modifier # 2:

Héhé ok .. si vous voulez que votre toile totale s'affiche, seulement plus petit, perheps vous devriez jeter un coup d'oeil et LayoutTransform. Ensuite, utilisez un ScaleTranform pour redimensionner votre canevas;).

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

Tweak les paramètres jusqu'à ce que vous recevez l'effet désiré;)

+0

est exactement ce que Viewport je veux. Malheureusement, il n'y a pas de telle propriété pour la toile. Comment puis-je contourner cette limitation? –

+0

Hey Erik .. J'ai changé la réponse un peu ... Je pense que la propriété Clip sera plus appropriée :) – Arcturus

+0

Merci! Clip est presque ce que je cherche. Je peux découper pour montrer seulement une partie de la toile ... MAIS je veux redimensionner cette région écrêtée remplir son récipient. Est-ce possible? –