Usare DataGrid, Calendar e DatePicker in WPF

di Cristian Civera, in Windows Presentation Foundation,

Fin dalla sua introduzione, Windows Presentation Foundation ha sofferto della mancanza di alcuni controlli comuni che il programmatore è solito trovare nelle WinForms.

In attesa del .NET Framework 4.0 che includerà nuovi controlli, un progetto ufficiale Microsoft permette di poter già assaggiare alcuni di questi nuovi controlli, completi di codice sorgente e disponibili a questo indirizzo
http://www.codeplex.com/wpf

Il Calendar e il DatePicker permettono la selezione di una data, il secondo utilizzando però una popup, permettendo la selezione multipla, range di date disponibili e massima libertà di personalizzazione dell'aspetto.

<c:Calendar>
  <c:Calendar.BlackoutDates>
    <c:CalendarDateRange Start="01/11/2008" End="25/11/2008"/>
  </c:Calendar.BlackoutDates>
</c:Calendar>

<c:DatePicker>
  <c:DatePicker.BlackoutDates>
    <c:CalendarDateRange Start="01/11/2008" End="25/11/2008"/>
  </c:DatePicker.BlackoutDates>
<c:DatePicker/>

Il controllo DataGrid invece permette di effettuare il Binding di dati come è solito fare in WPF con l'editing delle righe. Le funzionalità principali sono:
- autogenerazione delle colonne;
- supporto delle colonne di tipologia TextBox, CheckBox, ComboBox e HyperLink o Template;
- selezione singola, multipla, dell'intera riga o delle singole celle;
- maschera di dettaglio tramite template che si visualizza alla selezione della riga;
- binding di WPF integrato e quindi tutte le funzioni di validazione e gestione errori;
- completa personalizzazione di ogni aspetto della griglia: righe, colonne, intestazioni ecc.
Di seguito un semplice utilizzo:

<dg:DataGrid ItemsSource="{StaticResource Products}"/>
  <dg:DataGrid.Columns>
    <dg:DataGridTextColumn Header="No." Width="SizeToCells"  
                           Binding="{Binding ID}" 
                          IsReadOnly="True" />
    <dg:DataGridTextColumn Header="Description" 
                           Binding="{Binding  Description}" />
    <dg:DataGridTextColumn Header="Quantity" MinWidth="200" 
                           Binding="{Binding Quantity}"
                           CanUserSort="False" />
    </dg:DataGrid.Columns>
</dg:DataGrid>

Questa libreria racchiusa nell'assembly WPFToolkit.dll richiede il .NET Framework 3.5 SP1.

Commenti

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti

I più letti di oggi