Disons que j'ai une toile définie pour être 1000x1000 gros. Est-il possible de n'en montrer qu'une partie 100x100 dans une Viewbox (ou un rectangle)?WPF. Comment montrer seulement une partie de la grande toile?
Toute aide est aprécié .....
Disons que j'ai une toile définie pour être 1000x1000 gros. Est-il possible de n'en montrer qu'une partie 100x100 dans une Viewbox (ou un rectangle)?WPF. Comment montrer seulement une partie de la grande toile?
Toute aide est aprécié .....
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é;)
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? –
Hey Erik .. J'ai changé la réponse un peu ... Je pense que la propriété Clip sera plus appropriée :) – Arcturus
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? –