Tra i nuovi controlli introdotti con il rilascio della Universal Windows Platform, ne abbiamo uno appositamente creato per visualizzare e selezionare una data dal calendario.
Il controllo in questione è CalendarDatePicker: questo controllo presenta una un look simile ad una TextBox, con una piccola icona sul lato destro.
Come qualsiasi altro controllo, è possibile personalizzare l'aspetto, creando uno Style apposito che ne ridefinisca il template.
Il template del CalendarDatePicker è molto complesso, poichè utilizza diversi controlli al suo interno, come ad esempio un Flayout e un CalendarView.
<ControlTemplate TargetType="CalendarDatePicker"> <Grid x:Name="Root"> <!--rimosso --> <TextBlock x:Name="DateText" Foreground="{ThemeResource SystemControlForegroundBaseMediumBrush}" FontSize="15" HorizontalAlignment="Left" Padding="12, 0, 0, 0" Grid.Row="1" Text="{TemplateBinding PlaceholderText}" VerticalAlignment="Center" /> <FontIcon x:Name="CalendarGlyph" Grid.Column="1" Foreground="{ThemeResource SystemControlForegroundBaseMediumHighBrush}" FontSize="16" FontFamily="{ThemeResource SymbolThemeFontFamily}" Glyph="?" HorizontalAlignment="Center" Grid.Row="1" VerticalAlignment="Center" /> </Grid> </ControlTemplate>
È possibile modificare l'aspetto del controllo, ad esempio modificando l'icona, semplicemente com la proprietà Glyph, o rimuovendo il controllo stesso e sostituendolo con un'immagine o qualsiasi altro elemento utile alla nostra applicazione.
Ad esempio, nell'immagine seguente possiamo vedere come sia stata personalizzata l'icona utilizzando uno dei tanto "caratteri" messi a disposizione dal nuovo font Segoe MDL2 Assets.

Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare EF.Constant per evitare la parametrizzazione di query SQL
Utilizzare la funzione EF.Parameter per forzare la parametrizzazione di una costante con Entity Framework
Creare una libreria CSS universale: Cards
Eseguire query in contemporanea con EF
Anonimizzare i dati sensibili nei log di Azure Front Door
Sfruttare GPT-4o realtime su Azure Open AI per conversazioni vocali
Usare la libreria PredicateBuilder per eseguire query tramite Entity Framework che usano or su più campi
Migliorare l'organizzazione delle risorse con Azure Policy
Testare il failover sulle region in Azure Storage
Disabilitare le run concorrenti di una pipeline di Azure DevOps
Documentare i servizi REST con Swagger e OpenAPI con .NET 9
Esporre i propri servizi applicativi con Semantic Kernel e ASP.NET Web API
I più letti di oggi
- Analizzare il contenuto di una issue con GitHub Models e AI
- .NET Conference Italia 2025 - Milano
- Usare la libreria PredicateBuilder per eseguire query tramite Entity Framework che usano or su più campi
- The Agentic Day - Milano
- Gestione file Javascript in Blazor con .NET 9
- Gestione CSS in Blazor con .NET 9
- Documentare i servizi REST con Swagger e OpenAPI con .NET 9