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
Esportare ed analizzare le issue di GitHub con la CLI e GraphQL
Short-circuiting della Pipeline in ASP.NET Core
Gestire liste di tipi semplici con Entity Framework Core
Come migrare da una form non tipizzata a una form tipizzata in Angular
Reactive form tipizzati con modellazione del FormBuilder in Angular
Paginare i risultati con QuickGrid in Blazor
Usare lo spread operator con i collection initializer in C#
Generare file per il download da Blazor WebAssembly
Evitare la command injection in un workflow di GitHub
Utilizzare Tailwind CSS all'interno di React: primi componenti
Creazione di plugin per Tailwind CSS: espandere le funzionalità del framework dinamicamente
Eseguire una GroupBy per entity in Entity Framework