"RealCat" <(E-Mail Removed)> wrote in message
news:c2033d06-2531-44ff-9633-(E-Mail Removed)...
> Hello.
> For the first time in my several years of C# coding, I'm actually
> trying to learn WPF. I know that everything I see on the XAML is
> vector-based. Since the most significant advantage of vector graphics
> is that they can be scaled without loss of graphic quality, I'd like
> to write an application whose entire window can be zoomed in and out
> as the user wants (I always have been hated applications in small
> windows...). Just like in the VS.NET designer. In VS.NET designer
> there is a scaler at the top-left corner, and the entire window can be
> zoomed in our out very easily.
>
> So, if I want to change the zoom level (I don't know this is the
> correct terminology) of my window at runtime, is there any quick and
> easy way to do that? I don't mean changing the size of the window and
> the layouts of the controls accordingly using some kind of layout
> manager. I mean the complete zoom just like we can do in VS.NET
> designer.
Try something like:
<Page
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<StackPanel Orientation="Vertical">
<Slider x:Name="zoom" Minimum="0.5" Maximum="2" Value="1" Width="150"
HorizontalAlignment="Left"/>
<Grid>
<Grid.LayoutTransform>
<ScaleTransform ScaleX="{Binding ElementName=zoom, Path=Value}"
ScaleY="{Binding ElementName=zoom, Path=Value}" />
</Grid.LayoutTransform>
<Button Margin="50" HorizontalAlignment="Left" Content="Press Me"/>
</Grid>
</StackPanel>
</Page>
Chris Jobson
|