La mia prima (semplice) applicazione in Silverlight

by Andrea 26 January 2010 06:44

Ecco la mia prima applicazione svilluppata in Silverlight. Niente di chissà che, ma almeno ho avuto modo di vedere/provare:

  • Layout - Posizionamento dei controlli. In questo caso, molto semplice, utilizzando una Grid. Silverlight Layout System
  • VisualStateManager - Utilizzato per il cambio di stato nel MouseEnter e MouseLeave nei controlli Image. Semplifica davvero di molto la gestione degli stati.
    VisualStateManager Class
  • Storyboard - Realizzazioni di animazioni per gli efetti di transizione.
    Silverlight animations
  • Styles e Resource - Inserite le proprietà comuni a più controlli all'interno delle risorse del controllo contenitore, in modo da poter cambiare l'aspetto dei controlli intervenendo in un'unico punto. Venendo dal web, questo rispecchia l'uso dei fogli di stile nelle pagine html.
    Style Class

Il codice sorgente è disponibile a questo link: Download Dottor.SocialNetworks

Ho preferito iniziare da un'applicativo semplice, in quanto è stato più chiaro (per me) capire il ruolo di ogni elemento all'interno della pagina e il rispettivo ruolo. Lo xaml finale, è risultato chiaro e di facile lettura, e spero possa essere d'aiuto anche a chi si trovasse nella mia stessa situazione, e stesse iniziando ora lo studio di Silverlight.

Tags:

ASP .NET | .NET | Microsoft

Comments

17/10/2010 05:12 #

Ciao Andrea, ottimo post.
Smanettando con Blend sul tuo esempio ho notato che si può ottenere lo stesso effetto (Normal->Hover e viceversa) tramite Assets->Behaviors->GoToStateAction. Il codice XAML generato è il seguente:

<i:Interaction.Triggers>
      <i:EventTrigger EventName="MouseEnter">
        <ei:GoToStateAction StateName="HoverFacebook"/>
      </i:EventTrigger>
      <i:EventTrigger EventName="MouseLeave">
        <ei:GoToStateAction StateName="NormalFacebook"/>
      </i:EventTrigger>
</i:Interaction.Triggers>

In questo modo non servono più gli eventi nel code behind.

Simone Italy |

Comments are closed