2009-05-11 8 views

Répondre

24

Mettez vos trucs dans une grille, lier l'échelle de la grille rend la transformation à un curseur (curseur doit avoir min valeur de 1):

<Grid x:Name="LayoutRoot"> 
     <Grid.RowDefinitions> 
      <RowDefinition Height="0.867*"/> 
      <RowDefinition Height="0.133*"/> 
     </Grid.RowDefinitions> 
     <Slider x:Name="slider" Grid.Row="1" Minimum="1"/> 
     <Grid RenderTransformOrigin="0.5,0.5"> 
      <Grid.RenderTransform> 
       <TransformGroup> 
        <ScaleTransform 
        ScaleY="{Binding Path=Value, ElementName=slider}" 
        ScaleX="{Binding Path=Value, ElementName=slider}"/> 
       </TransformGroup> 
      </Grid.RenderTransform> 
      <TextBox Text="TextBox" Height="45.214" 
VerticalAlignment="Top" Margin="194,139,209,0"/> 
      <TextBox VerticalAlignment="Bottom" 
Text="TextBox" Margin="194,0,209,118.254" Height="48.96"/> 
     </Grid> 
    </Grid> 
+8

Vous pouvez utiliser 'LayoutTransform' pour le zoom, cela permettra à tous les contrôles' ScrollViewer' parent de montrer les barres de défilement correctement. –

+0

@Brett: Merci! Votre commentaire a parfaitement répondu à ma question connexe! – Beska

+0

point mineur, mais tous FramewrokElements ont Render/LayoutTransform donc la grille n'est pas un élément nécessaire ici –

1

Vous devriez jeter un oeil à this article par Mitsu Furuta (n » Je m'inquiète pour le titre drôle!). Je ne sais pas si elle répond exactement à vos besoins, mais il pourrait vous donner quelques idées ...

1

Pour obtenir un professionnel Zoom Control pour WPF consultez le ZoomPanel. Il n'est pas gratuit, mais est très facile à utiliser et possède de nombreuses fonctionnalités - zoom et panoramique animés, support pour ScrollViewer, support de molette de souris, ZoomController inclus (avec déplacement, zoom avant, zoom arrière, zoom rectangle, boutons de réinitialisation). Il est également livré avec de nombreux exemples de code.

Questions connexes