Oggi sono finalmente riuscito a venire a capo di un problema che da tempo mi affliggeva. Nella mia applicazione Silverlight, apparentemente in modo causale la barra di controllo laterale di tanto in tanto si spostava nel bel mezzo della pagina... nulla di così grave, bastava fare il resize della finestra e tutto tornava a posto, ma ovviamente il comportamento è del tutto inaccettabile. Oggi finalmente ho avuto il tempo di capire l'origine del malfunzionamento che si è rivelato originato da un probabile bug imputabile a Silverlight.

L'origine del problema è la seguente: Quando avete un host, posizionato sulla pagina al 100% in modo da riempire in modo dinamico un'area della pagina (o tutta), pare che l'apertura di un nuovo tab di Internet Explorer 7.0 metta un po' in crisi il plugin. Quello che avviene pochi istanti dopo essere passati al nuovo tab è che l'host solleva due eventi OnResize. Il primo è corretto anche se non necessario, ma il secondo (immediatamente consecutivo) invece arriva portando con se delle misure fasulle dell'host pari circa al 50% della misura reale.

L'unico modo che ho trovato di gestire questo errore è di confrontare le misure che mi arrivano con una misura certa all'interno della pagina che mi confermi che il dato non è errato. Per farlo è praticamente obbligatorio usare la MicrosoftAjax Library:

   1: handleResize : function(sender, eventArgs)
   2: {
   3:     var bounds = Sys.UI.DomElement.getBounds($get('silverlightPlugInHost'));
   4:     
   5:     if (bounds.width != this.plugIn.content.actualWidth && 
   6:         bounds.height != this.plugIn.content.actualHeight)
   7:         return;
   8:     
   9:     // Do what you want with actualWidth & actualHeight
  10: }

L'obbligo nell'uso della MS Ajax Library deriva dal fatto che implementare in proprio la getBounds() in modo cross-browser è tutt'altro che una passeggiata. Quello che faccio in sostanza è di verificare le dimensioni date da actualWidth e actualHeight per mezzo del DIV che contiene l'host. Naturalmente questo dovrà avere le stesse dimensioni dell'host altrimenti non vale...

Qualcuno potrebbe dire che a questo punto varrebbe la pena di usare direttamente le dimensioni di DIV, ma considerate che io l'applicazione l'ho già fatta e così devo modificare il minimo indispensabile. E poi preferisco usare il metodo normale e gestire i casi eccezionali diversamente.


selsat Stamattina è stata pubblicata sul blog di l'applicazione Silverlight che ho realizzato per la mia azienda. L'applicazione è ampiamente spiegata nel post di Pietro Brambati perciò non credo ci sia molto altro da aggiungere se non che ho la speranza che sia un esempio che stimoli l'uso di questa sottovalutata piattaforma.

Ci ho lavorato per un bel po' di tempo e devo dire che alla fine il risultato ottenuto ha sicuramente giustificato lo sforzo che, inutile negarlo è stato considerevole visto il linguaggio utilizzato, ma non poi così tragico come qualcuno vorrebbe far intendere.

Link: Best ITA Apps- SelSystemWeb e Silverlight


E' un po' che ci lavoro, a tempo perso, e finalmente oggi sono riuscito a completare il mini-player Silverlight, a pubblicarlo e infine a registrare uno screencast che spero essere il primo di una lunga serie. E come primo tip ho scelto di cominciare dall'inizio. Per provare a realizzare qualcosa con Silverlight è opportuno avere a disposizione un progetto web fatto come si deve e dato che quelli dei template di Visual Studio lasciano un po' a desiderare ho pensato di spiegare come creare un template custom che contenga tutto ciò che serve. Si tratta appunto dell'inizio, della struttura del progetto, dei file necessari e di come il plugin viene inserito nella pagina.

Niente di speciale, ma è dalle cose semplici che si comincia.

Link:


Quest'oggi alle 14:30 avrò nuovamente il piacere di incontrarmi nell'aula virtuale con qualcuno di voi in occasione del webcast . In questo appuntamento ho deciso di seguire una strada completamente diversa dai precedenti. Finora abbiamo approfondito Silverlight così com'è, con una scansione delle feature e di come esse possono essere usate. Nel webcast che partirà fra poche ore invece vedremo come applicare Silverlight per realizzare qualcosa di reale e funzionante. Avremo 4 esempi, di una complessità media e prenderemo spunto dalla loro implementazione per vedere che tecniche sono utilizzate. Al termine di ogni esempio vi sarà una sorta di "Question Time", nel quale sarete liberi di chiedere lumi su quello che non è chiaro. La durata del webcast dipenderà sostanzialmente da voi quindi, dal numero di partecipanti e dalla quantità di domande che mi porrete.

Vi aspetto:

Technorati Tag: ,

Finalmente posso annunciare che il concorso italiano su Silverlight è ufficialmente aperto. Stasera ho attivato il sito web del concorso all'indirizzo http://italy.silverlightchallenge.eu

Il concorso si suddivide in due parti; La prima parte è appunto il concorso italiano per i quale sono stati riservati alcuni premi, offerti da varie aziende che trovate nelle pagine del sito, e che vorrei ringraziare per l'importante supporto. Nella seconda parte, i vincitori del concorso nazionale accederanno alla finale europea per la quale vi sono in premio persino alcuni biglietti Ticket  & Travel per la conferenza MIX 2008 che si terrà a Las Vegas.

I premi nazionali ancora non sono definitivi. Sono in attesa di alcune conferme che spero arrivino al più presto, ma mi pareva importante dare il via alle iscrizioni dato il poco tempo disponibile.

Invito chiunque voglia partecipare a prendere visione del regolamento in lingua inglese, iscriversi al sito e lavorare alacremente per portare qualcuno dei nostri sul podio europeo!

Technorati tags: , ,

È la prima cosa che mi è venuta in mente quando stasera mi è arrivato l'aggiornameto degli iscritti del prossimo meeting del 14. A quanto pare le registrazioni al meeting che dovrà tenere il sottoscritto hanno superato di gran lunga il record detenuto finora da AJAX. Siamo a quota 47 su una sala che con 35 è già sull'orlo dell'esplosione. Non mi resta che sperare in una drop incisiva altrimenti stavolta più di qualcuno rimane in piedi...

Dal forum di Silverlight si apprende che il team di sviluppo sta lavorando per rilasciare al più presto la versione dei Silverlight tools per Visual Studio 2008 RTM. Una variabile importante nel rilascio è la quantità di tacchino divoreranno al Thanksgiving...

Raccomando a chi abbia bisogno di questi tool di sollecitare nel forum ma soprattutto di non provare ad installare la vecchia versione che purtroppo non funziona ma causa anche non pochi problemi... lo dico per esperienza :)

Link: http://silverlight.net/forums/t/6850.aspx

Technorati Tag: , ,

Il webcast di ieri è oramai passato ed è giunto il momento di pubblicare gli esempi di codice. Abbiamo avuto qualche problema tecnico, i partecipanti non erano molti come speravo, ma tutto sommato è andato bene. Un grazie a tutti coloro che hanno partecipato online e che mi hanno posto qualche domanda.

Link: http://blog.boschin.it/download/Silverlight-Scripting.zip

Technorati tags: , ,

IMAGE_034.jpgSono arrivato con qualche minuto di ritardo perché mi sono un po' attardato a pranzo, ma la sessione di Fritz Onion non potevo perdela. L'argomento è l'uso dei WebServices in collaborazione con Silverlight sul quale ho già speso molto del mio tempo. Ascoltare l'opinine di un esperto e di sicuro interesse.