Alessandro Del Sole's Blog

{ A programming space about Microsoft® .NET® }
posts - 1908, 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

Disabilita cookie ShinyStat

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

WPF: utilizzare codice gestito all'interno di XAML

Una fantastica caratteristica del linguaggio XAML è quella che consente di inserire interi blocchi di codice Visual Basic e C# al suo interno, utilizzando delle sezioni XML di tipo CDATA, a loro volta contenute in appositi elementi <x:code> (dove x è l'identificatore predefinito per il namespace nello schema XML Microsoft).

Considerate il seguente snippet:

<Window x:Class="Window1"

    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

    Title="Window1" Height="300" Width="300" Loaded="Window1_Loaded">

    <Grid Name="Grid1">

        <x:Code>

            <![CDATA[

                Private Sub Window1_Loaded(ByVal sender As Object, e As RoutedEventArgs)

               

                    Dim myButton As New Button

                        With myButton

                            .Height= 30

                            .Width= 100

                            .Content = "Ciao WPF!"

                            .Margin = New Thickness(10, 10, 10, 10)

                        End With

                    Grid1.Children.Add(myButton)

                End Sub

            ]]>

        </x:Code>

    </Grid>

</Window>

Come potete osservare, all'interno di una sezione CDATA è stato specificato un blocco di codice Visual Basic (ma poteva essere C#) che, al caricamento della finestra principale, aggiunge un nuovo pulsante, in maniera analoga a quanto avremmo potuto fare scrivendo codice XAML. Questo tipo di scrittura si definisce codice in-line. Personalmente ritengo sempre preferibile l'uso di XAML per gestire il design, sebbene sia utile conoscere l'esistenza di questa tecnica. In particolare, ricordate che, utilizzando questa tecnica, i controlli dell'interfaccia grafica vengono istanziati in fase di run-time e non vengono visualizzati a design-time.

Alessandro

Print | posted on martedì 15 gennaio 2008 01:59 | Filed Under [ Windows Presentation Foundation ]

Powered by:
Powered By Subtext Powered By ASP.NET