Un aspetto molto interessante, ma molto spesso sottovalutato, riguarda la User eXperience (UX) delle applicazioni alla quale si sta lavorando: la maggior parte delle volte sono i dettagli meno importanti a fare la differenza tra un'applicazione curata e un'applicazione bella da vedere.
Uno dei concetti spesso trascurati è il puntatore del mouse: il classico cursore indica la posizione sullo schermo e la cliccabilità degli elementi, mentre il progress indica l'attesa per il completamento di una operazione, le doppie freccie la possibilità di ridimensionare una finestra.
Queste icone sono già integrate con il sistema operativo ma, nel caso si stia sviluppando un controllo personalizzato, possono risultare molto utili per indicare meglio all'utente le varie possibilità di interazione con quel controllo. Per farlo è sufficiente fare uso della classe CoreCursor:
CoreCursor cursor = null; cursor = new CoreCursor(CoreCursorType.Arrow, 0); cursor = new CoreCursor(CoreCursorType.Cross, 0); cursor = new CoreCursor(CoreCursorType.Wait, 0); cursor = new CoreCursor(CoreCursorType.Hand, 0); cursor = new CoreCursor(CoreCursorType.Help, 0); cursor = new CoreCursor(CoreCursorType.SizeAll, 0); Window.Current.CoreWindow.PointerCursor = cursor;
Ovviamente la logica descritta nello script è solo indicativa di alcune delle possibilità di personalizzazione offerte dall'enum CoreCursorType.
In alternativa è possibile impostare anche un CoreCursorType.Custom per rendere il puntatore veramente personalizzato. Questo è indicato per un utilizzo molto specifico, qualora si disponga già di un file *.res all'interno del file di progetto: in questo caso sarà necessario cambiare il secondo parametro del costruttore della classe CoreCursor indicando l'ID della risorsa creata.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Garantire la provenienza e l'integrità degli artefatti prodotti su GitHub
Migliorare l'organizzazione delle risorse con Azure Policy
Recuperare l'ultima versione di una release di GitHub
Gestire gli accessi con Token su Azure Container Registry
Conoscere il rendering Server o WebAssembly a runtime in Blazor
Sostituire la GitHub Action di login su private registry
Utilizzare EF.Constant per evitare la parametrizzazione di query SQL
Generare una User Delegation SAS in .NET per Azure Blob Storage
Managed deployment strategy in Azure DevOps
Estrarre dati randomici da una lista di oggetti in C#
Ottenere un token di accesso per una GitHub App
Supportare lo HierarchyID di Sql Server in Entity Framework 8