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
Evidenziare una porzione di testo in un pagina dopo una navigazione
Recuperare le subissue e il loro stato di completamento in GitHub
Utilizzare WebJobs su Linux con Azure App Service
Eliminare record doppi in Sql Server
Utilizzare il metodo Index di LINQ per scorrere una lista sapendo anche l'indice dell'elemento
Ridimensionamento automatico input tramite CSS
Effettuare il log delle chiamate a function di GPT in ASP.NET Web API
Fornire parametri ad un Web component HTML
Gestione CSS in Blazor con .NET 9
Proteggere l'endpoint dell'agente A2A delle Logic App
Utilizzare Locust con Azure Load Testing
Rendere le variabili read-only in una pipeline di Azure DevOps


