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
Criptare la comunicazione con mTLS in Azure Container Apps
Modificare i metadati nell'head dell'HTML di una Blazor Web App
Eseguire operazioni con timeout in React
Ottimizzare le performance delle collection con le classi FrozenSet e FrozenDictionary
Sfruttare al massimo i topic space di Event Grid MQTT
Ottimizzare il mapping di liste di tipi semplici con Entity Framework Core
Come migrare da una form non tipizzata a una form tipizzata in Angular
Eseguire operazioni sui blob con Azure Storage Actions
Evitare la command injection in un workflow di GitHub
Effettuare delete massive con Entity Framework Core 7
Usare Refit e Polly in Blazor per creare client affidabili e fortemente tipizzati
Sviluppare un'interfaccia utente in React con Tailwind CSS e Preline UI