Prossimi appuntamenti - Community Meeting e Web Congress

by Andrea 11 April 2008 02:04

Mi ero promesso di stare un pò calmo per alcuni mesi in modo da riuscire ad avere un pò di più tempo libero, ma a quanto pare è più forte di me, e la passione per la community prende sempre il sopravvento. Eccomi qui infatti ad indicarvi i prossimi appuntamenti che mi vedranno partecipe:

LogoXeDotNet Venerdì 16 Maggio 2008 terrò il community meeting su ASP.NET 3.5 al NOVOTEL a Mestre.
http://www.xedotnet.org/48/section.aspx/295

WebCongress Giovedì 29 Maggio 2008 a Pordenone, XeDotNet con 1nn0va organizzano un'evento tutto dedicato al Web, dove verranno trattati come argomenti Silverlight 2.0, Windows Communication Foundation e le novità di ASP.NET 3.5 (che spetta a me).
http://webcongress.xedotnet.org

E quindi, registratevi e mi raccomando, non mancate! ;)

Tags:

ASP .NET | XeDotNet

Guida ASP.NET Starter Kit

by Andrea 08 April 2008 02:04

guida_starterkit Nel sito di HTML.it è uscita oggi una guida sugli starter kit di ASP.NET, e verrà arricchita di nuovi articoli nel corso delle prossime settimane.

Cos'ha di interessante questa guida?
Un motivo semplicissimo, gli articoli sugli starter kit sono scritti da me, e questo è già un buon motivo per seguirla.
Mario Fontana ha dato il via a questa guida scrivendo la parte introduttiva (Introduzione, Download e Requisiti, Installazione), e a me spetta il dettaglio su tutta una serie di starter kit (che inizieranno ad uscire a breve).

La guida è di livello base, ma credo valga la pena seguirla perchè ci si rende davvero conto di quanto sia semplice l'utilizzo degli starter kit e la loro customizzazione.

Ecco il link alla guida: Guida ASP.NET Starter Kit

Technorati Tags: ,,

Tags:

ASP .NET

Il mio ultimo giocattolino - HTC Touch Cruise

by Andrea 05 April 2008 01:04

htc-cruise-4 Ebbene si, ho fatto la pazzia e ho deciso di cambiare il mio cellulare, acquistando l'HTC Touch Cruise.

Devo dire che è un device davvero stupendo, e non lo si può proprio chiamare telefono....diciamo che con un giocattolino così in mano, ci si dimentica che sia anche un telefono.

Le specifiche le trovate a questo link.

Non avrei mai creduto di appassionarmi così tanto a questo oggettino, ma Touch-Flo, TomTom 6 e Wi-Fi sono una combinazione davvero fenomenale. E' davvero un device stupendo e in queste 2 settimane lo ho spremuto davvero per bene, e (per fortuna) non mi ha mai deluso.

Ora non mi rimane altro che iniziare a esplorare il mondo del Compact Framework, ma per questo c'è tempo. :D

Tags:

Generale

AutoComplete Extender - alcuni workaround

by Andrea 04 April 2008 23:04

BoxRicercaStò utilizzando il controllo AutoComplete Extender, contenuto negli Ajax Control Toolkit, e mi sono trovato ad affrontare diversi problemi dovuti a bug del controllo ed altri dovuti a problemi con IE6.
Voglio però sottolineare che grazie alla flessibilità di questi controlli, sono riuscito facilmente a trovare alcuni workaround senza dover scrivere montagne di codice.

Nella mia applicazione mi trovo ad avere un controllo TextBox a cui è collegato l'AutoComplete Extender (per agevolare l'inserimento del testo), e posizionati subito sotto sono presenti alcune DropDownList.

Iniziamo dal primo problema:
con IE6, all'apertura del pannello dell'AutoComplete Extender, le DropDownList rimangono in primo piano, "bucando" il pannello.
La soluzione che ho trovato è stata quella di intervenire nelle animations, inserendo alcuni ActionScript che nascondono le DropDownList quando il pannello si apre, e le rivisualizzano non appena il pannello si stà chiudendo. In questo modo, l'AutoComplete Extender sarà visualizzato senza problemi grafici.

Altro problema:
alla chiusura del pannello non riuscivo più a modificare il valore delle DropDownList perchè il pannello viene nascosto impostando lo stile visibility, che lo fa quindi mantere in primo piano, bloccando l'accesso ai controlli posti sotto.
La soluzione più veloce è stata quella di intervenire anche qui nelle ActionScript, recuperandomi l'oggetto del pannello (che ha l'ID composto da BehaviorID__completionListElem) e settandogli la proprietà display a none. Facendo così, il pannello non risulta più essere in primo piano, e si ha l'accesso ai controlli in precedenza bloccati.

Ecco qui il codice per risolvere questi due problemi:

<ajaxToolkit:AutoCompleteExtender 
    runat="server" 
    BehaviorID="AutoCompleteEx" 
    ID="autoComplete1"
    TargetControlID="CittaCod" 
    ServiceMethod="GetCityList" 
    ServicePath="~/Services.asmx"
    MinimumPrefixLength="2" 
    CompletionInterval="1000" 
    FirstRowSelected="true" 
    EnableCaching="true"
    CompletionSetCount="20" 
    CompletionListCssClass="autocomplete_completionListElement"
    CompletionListItemCssClass="autocomplete_listItem" 
    CompletionListHighlightedItemCssClass="autocomplete_highlightedListItem">
    <Animations>
    <OnShow>
        <Sequence>
            <OpacityAction Opacity="0" />
            <HideAction Visible="true" />
            <ScriptAction Script="
                var behavior = $find('AutoCompleteEx');
                if (!behavior._height) {
                    var target = behavior.get_completionList();
                    behavior._height = target.offsetHeight - 2;
                    target.style.height = '0px';
                }" />
            <Parallel Duration=".4">
                <FadeIn />
                <Length PropertyKey="height" 
                        StartValue="0" 
                        EndValueScript="$find('AutoCompleteEx')._height" />
            </Parallel>                                
            <ScriptAction Script="                 
                var ddlPrezzoMin = $get(ddlPrezzoMinID);
                var ddlPrezzoMax = $get(ddlPrezzoMaxID);
                var ddlMqMin = $get(ddlMqMinID);
                var ddlMqMax = $get(ddlMqMaxID);
                
                ddlPrezzoMin.style.visibility = 'hidden';
                ddlPrezzoMax.style.visibility = 'hidden';
                ddlMqMin.style.visibility = 'hidden';
                ddlMqMax.style.visibility = 'hidden'; 
                " />
        </Sequence>
    </OnShow>
    <OnHide>
        <Sequence>
            <ScriptAction Script="    
                var ddlPrezzoMin = $get(ddlPrezzoMinID);
                var ddlPrezzoMax = $get(ddlPrezzoMaxID);
                var ddlMqMin = $get(ddlMqMinID);
                var ddlMqMax = $get(ddlMqMaxID);
                
                ddlPrezzoMin.style.visibility = 'visible';
                ddlPrezzoMax.style.visibility = 'visible';
                ddlMqMin.style.visibility = 'visible';
                ddlMqMax.style.visibility = 'visible';
                
                var autoCompleteElement = $get('AutoCompleteEx_completionListElem');
                autoCompleteElement.style.display = 'none';                                    
                " />
            <Parallel Duration=".4">
                <FadeOut />
                <Length 
                    PropertyKey="height" 
                    StartValueScript="$find('AutoCompleteEx')._height" 
                    EndValue="0" />
            </Parallel>
        </Sequence>
    </OnHide>
    </Animations>
</ajaxToolkit:AutoCompleteExtender>

 

Tags: , , , ,

ASP.NET AJAX