Atlas è già ingiro da un po' di tempo ormai, e anche se
la documentazione ufficiale è ancora molto scarna in tanti si sono
sbizzarriti nella creazione sia di applicazioni che di controlli ed
extenders; per chi non lo sapesse i Control Extenders sono dei controlli
supplementari che non hanno vita propria ma che si possono "appiccicare" a
controlli standard - come TextBox, DropDownList... - per estenderne le
funzionalità.
Atlas ne porta in grembo uno molto utile, l'AutocompleteExtender, che associato ad un TextBox permette
di creare un effetto come quello dell'ormai storico Google
Suggest. Oltre a questo il team di Atlas ha fornito da subito una discreta
lista di extenders raggruppati in quello conosciuto con il nome di Atlas Control
Toolkit.
Quello che viene subito alla mente agli sviluppatori pigri come me è
l'integrazione degli extenders in un controllo personalizzato, in modo che per
utilizzarlo non sia necessario trascinare dalla Toolbox due componenti ma
soltanto uno! C'è chi ci ha già pensato e ha creato un TextBox che incorpora le
funzionalità dell'AutocompleteExtender, estendendolo ulteriormente. Il risultato
è questo ed è decisamente piacevole.
Tanto per cimentarmici anche io ho preso spunto da questa
idea - ossia un link che visualizzi un'anteprima della pagina a
cui collega - e ho creato lo stesso effetto utilizzando l'HoverMenu Extender di Atlas. Grazie poi alle prorietà esposte da
questo extender ed alla qualità del framework sottostante il funzionamento è
decisamente migliore ed ulteriormente estensibile.
Si comporta sostanzialmente come un qualsiasi HyperLink standard, esponendo
le proprietà Text, NavigateUrl ed ImageUrl, oltre a quelle proprie
dell'extender, come offset, posizione ecc... La differenza è che quando il
mouse ci si ferma sopra compare un piccolo popup che mostra l'anteprima della
pagina a cui punta. Per essere più precisi, mostra l'anteprima della pagina root
del dominio. L'immagine di anteprima è ottenuta tramite un servizio esposto da
MSN Search, che non è molto flessibile, ma in circolazione ci sono già una gran
quantità di articoli che descrivono come generate automaticamente delle immagini
e farlo tramite un HttpHandler non dovrebbe essere troppo difficile (anche se al
momento non saprei come si potrebbe creare uno snapshot della pagina).
Sono disponibili un sito web di esempio ed i sorgenti.
powered by IMHO 1.3