Pur essendo concettualmente un solo prodotto, Windows 10 è passato attraverso diverse evoluzioni del runtime dalla Universal Platform, che negli anni ha subito diverse evoluzioni.
Nell'ultima versione di Windows (16299) è stata introdotta una funzionalità chiamata Conditional XAML, ovvero la possibilità di cambiare lo XAML in base alla presenza o meno di una determinata API.
Per sfruttare questa caratteristica per prima cosa dobbiamo dichiarare un Conditional Namespace che abbia la seguente forma:
xmlns:customNamespace="schema?metodo(parametro)"
La parte alla destra del ? rappresenta il namespace da aggiungere quando l'espressione del metodo è valutata true o false.
xmlns:myNamespace="http://schemas.microsoft.com/winfx/2006/xaml/presentation?IsApiContractPresent(Windows.Foundation.UniversalApiContract,5)"
in questo caso, il namespace sarà aggiunto solo se in presenza dell'ultima versione di Windows (API Contract 5). A questo punto possiamo condizionalmente aggiungere controlli che sono presenti solo su determintate versioni di Windows.
<myNamespace:ColorPicker colorPicker"Grid.Column="1"VerticalAlignment="Center"/>
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Usare una container image come runner di GitHub Actions
Utilizzare flat e flatMap per appiattire array innestati in array
Inizializzare i container in Azure Container Apps
Come migrare da una form non tipizzata a una form tipizzata in Angular
Sviluppare un'interfaccia utente in React con Tailwind CSS e Preline UI
Utilizzare la versione generica di EntityTypeConfiguration in Entity Framework Core
Le novità di Angular: i miglioramenti alla CLI
Utilizzare domini personalizzati gestiti automaticamente con Azure Container Apps
Creare alias per tipi generici e tuple in C#
Controllare gli accessi IP alle app con Azure Container Apps
Recuperare un elemento inserito nella cache del browser tramite API JavaScript
Creazione di plugin per Tailwind CSS: espandere le funzionalità del framework dinamicamente