Gestire risorse e stili in Windows Presentation Foundation - Prima parte

5 pagine in totale: <<Indietro 1 2 [3] 4 5 Avanti >>

Ogni StackPanel contiene un oggetto Button che referenzia la risorsa GradiendBackground.

<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">
    <StackPanel.Resources >

        <LinearGradientBrush x:Key="GradiendBackground " StartPoint="0,0" EndPoint="0,1">
            <GradientStop Color="White" Offset="0.0" />
            <GradientStop Color="Blue" Offset="1" />
        </LinearGradientBrush>
    </StackPanel.Resources >

    <StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">
        <StackPanel.Resources>
            <LinearGradientBrush x:Key="GradiendBackground " StartPoint="0,0" EndPoint="0,1">
                <GradientStop Color="Yellow" Offset="0.0" />
                <GradientStop Color="Red" Offset="1" />
            </LinearGradientBrush>
        </StackPanel.Resources >
        <Button Background="{StaticResource GradiendBackground}">
        Esegui
        </Button>
    </StackPanel>

    <StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">
        <StackPanel.Resources>
            <LinearGradientBrush x:Key="GradiendBackground " StartPoint="0,0" EndPoint="0,1">
                <GradientStop Color="Yellow" Offset="0.0" />
                <GradientStop Color="White" Offset="1" />
            </LinearGradientBrush>
        </StackPanel.Resources >
        <Button Background="{StaticResource GradiendBackground}">
        Esegui
        </Button>
    </StackPanel>

    <StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">
        <Button Background="{StaticResource GradiendBackground}">
        Esegui
        </Button>
    </StackPanel>

</StackPanel>

Il riferimento alla risorsa è risolto in primo luogo controllando tra le risorse dell'oggetto che fa uso; successivamente la ricerca continua risalendo l'albero logico fino a raggiungere il nodo principale. Infine è esaminata la collezione di risorse dell'applicazione e nel caso la ricerca termini non trovando nessuna occorrenza viene lanciata un'eccezione.

È fondamentale ricordare che ogni oggetto dichiarato nella collezione delle risorse è istanziato al primo utilizzo e successivamente condiviso, per cui ogni riferimento punta al medesimo oggetto.
Aggiungiamo ad esempio un bottone alle risorse in modo da poterlo utilizzare nel nostro StackPanel:

<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">

    <StackPanel.Resources>
        <Button x:Key="myResourcesButton">
        Esegui
        </Button>
    </StackPanel.Resources >

    <StaticResource ResourceKey="myResourcesButton"/>

</StackPanel>

5 pagine in totale: <<Indietro 1 2 [3] 4 5 Avanti >>

Contenuti dell'articolo

Commenti
Dai un voto a questo articolo, ci aiuterà a migliorare il nostro sito (1 è il voto minimo, 5 il massimo).

Per procedere al rating dell'articolo devi essere autenticato.

Aggiungi un nuovo commento »»»
Per inserire un commento, devi registrarti alla nostra community.



TUTORIALS


IN EVIDENZA
MISC