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
Effettuare lo stream della risposta in ASP.NET Core tramite IAsyncEnumerable
Effettuare il deploy di immagini solo da container registry approvati in Kubernetes
Usare una container image come runner di GitHub Actions
Creare alias per tipi generici e tuple in C#
Gestire domini wildcard in Azure Container Apps
Utilizzare domini personalizzati gestiti automaticamente con Azure Container Apps
Eseguire operazioni sui blob con Azure Storage Actions
Creare un'applicazione React e configurare Tailwind CSS
Miglioramenti agli screen reader e al contrasto in Angular
Code scanning e advanced security con Azure DevOps
Registrare servizi multipli tramite chiavi in ASP.NET Core 8
Utilizzare politiche di resiliency con Azure Container App