Alessandro Del Sole's Blog

{ A programming space about Microsoft® .NET® }
posts - 1909, comments - 2047, trackbacks - 352

My Links

News

Your host

This is me! Questo spazio è dedicato a Microsoft® .NET®, di cui sono molto appassionato :-)

Cookie e Privacy

Microsoft MVP

My MVP Profile

Microsoft Certified Professional

Microsoft Specialist

Xamarin Certified Mobile Developer

Il mio libro su VB 2015!

Pre-ordina il mio libro su VB 2015 Pre-ordina il mio libro "Visual Basic 2015 Unleashed". Clicca sulla copertina per informazioni!

Il mio libro su WPF 4.5.1!

Clicca sulla copertina per informazioni! E' uscito il mio libro "Programmare con WPF 4.5.1". Clicca sulla copertina per informazioni!

These postings are provided 'AS IS' for entertainment purposes only with absolutely no warranty expressed or implied and confer no rights.
If you're not an Italian user, please visit my English blog

Le vostre visite

I'm a VB!

Guarda la mia intervista a Seattle

Follow me on Twitter!

Altri spazi

GitHub
I miei progetti open-source su GitHub

Article Categories

Archives

Post Categories

Image Galleries

Privacy Policy

L'effetto ScaleTransform in WPF

Windows Presentation Foundation mette a disposizione un nuovo sistema per ridimensionare i controlli che, tecnicamente, può essere fatto anche solo tramite codice XAML. Questo risultato si ottiene applicando l'effetto ScaleTransform al controllo da ridimensionare. Riprendendo l'ormai noto esempio della ListBox, per la quale abbiamo visto l'effetto SkewTransform e l'effetto RotateTransform, digitiamo in Visual Studio 2005 il seguente XAML:

      <ListBox Height="150" Width="250">
        <ListBoxItem Content="Elemento a sfondo verde" Background="Chartreuse" />
        <ListBoxItem Content="Elemento a sfondo giallo" Background="Yellow" />
        <ListBoxItem Content="Elemento a sfondo pomodoro" Background="Tomato" />

        <ListBox.RenderTransform>
          <ScaleTransform CenterX="10" CenterY="10" ScaleX="0.7" ScaleY="0.7" />
        </ListBox.RenderTransform>
      </ListBox>

che a video genera il seguente output:

Come potete osservare, la ListBox risulta ridimensionata rispetto alle dimensioni originarie. L'elemento ScaleTransform richiede i soliti attributi CenterX e CenterY relativi alla posizione rispetto all'asse delle X e quello delle Y. Gli attributi ScaleX e ScaleY, poi, consentono di specificare il fattore di ridimensionamento rispetto all'asse cui si riferiscono. Se, ad esempio, avessimo specificato il valore 0.5 per entrambi gli attributi, avremmo dimezzato le dimensioni del controllo.

Tramite il binding, poi, aggiungendo ad esempio un controllo Slider, si potrebbe assegnare il valore di quest'ultimo controllo alle proprietà ScaleX e ScaleY, in modo da poter ridimensionare la ListBox dinamicamente. Tenete sempre a mente il fatto che queste tecniche sono applicabili anche ad altri controlli, che funzionano normalmente anche da codice.

Alessandro

Print | posted on venerdì 24 agosto 2007 23:50 | Filed Under [ Windows Presentation Foundation ]

Powered by:
Powered By Subtext Powered By ASP.NET