In Silverlight è molto semplice sostituire il puntatore del mouse predefinito con qualsiasi altro elemento grafico.
Attraverso l'evento MouseMove dell'oggetto Root, l'oggetto principale della struttura XAML del progetto,
plugIn.content.Root.AddEventListener("MouseMove","Root_onMouseMove");
è possibile intercettare i movimenti del mouse e conoscerne le coordinate x e y rispetto all'angolo superiore sinistro dell'oggetto stesso:
function Root_onMouseMove(sender, mouseEventArgs) { var _currentMousePosition = mouseEventArgs.getPosition(sender); var _NewMouse = sender.GetHost().content.findName("NewMouse"); _NewMouse["Canvas.Top"] = _currentMousePosition.y; _NewMouse["Canvas.Left"] = _currentMousePosition.x; }
Note le coordinate del mouse è sufficiente recuperare il riferimento all'oggetto che andrà a sostituire il puntatore predefinito ed impostare ad ogni movimento del mouse tali coordinate alle Attached Properties Canvas.Top e Canvas.Left.
Per completare l'effetto è importante nascondere il mouse predefinito utilizzando il seguente codice:
plugIn.content.Root.Cursor = "none";
Ecco il risultato: https://www.silverlightitalia.com/script/demo/1/
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.