Posts
255
Comments
330
Trackbacks
7
settembre 2008 Entries
Microsoft Days 2008

Grazie al post di Nicolò mi sono ricordato di registrarmi.

image 

Mi piacerebbe incontrare qualcuno della community, se interessati potete contattarmi via e-mail.

posted @ venerdì 26 settembre 2008 8.39 | Feedback (2)
Chrome e UnChrome

Questa mattina leggevo un articolo  a riguardo di Google Chrome (forse molti di voi lo sapevano già) , diciamo che mi ha lasciato un pò perplesso...

posted @ mercoledì 24 settembre 2008 9.25 | Feedback (0)
Un notebook da 13.000 euro!!!

Se volete un portatile come questo, dovete affrettarvi...

posted @ martedì 23 settembre 2008 16.04 | Feedback (5)
Scheda Protezione Windows XP Professional

Se la scheda "Protezione" nella finestra delle proprietà di file o cartelle non è visibile, per mostrare la scheda è sufficiente avviare "Risorse del Computer", nella barra dei menu scegliere "Strumenti\Opzioni Cartella", nella finestra visualizzata, evidenziare la scheda "Visualizzazione"; Nella lista sotto la dicitura "Impostazioni Avanzate", deselezionare la voce "Utilizza condivisione file semplice (scelta consigliata)" e premere "OK".  A questo punto la scheda "Protezione" dovrebbe risultare visibile.

posted @ venerdì 19 settembre 2008 13.10 | Feedback (0)
WPF: Style, Trigger e Multitrigger

Supponiamo di avere una Window WPF, contentente un singolo controllo TextBox. Vogliamo, senza utilizzare il code-behind, che a secondo del contenuto del TextBox, questo cambi il colore di background. Nello specifico, se nel TextBox c'è scritto "SI", il Background deve essere Verde, se c'è scritto "NO" rosso. Piccola prefazione: uno Style, è generalmente un'insieme di proprietà che applicato ad un'insieme di contenuti quali testi o immagini, ne determina l'aspetto grafico. Parlando di Style, in WPF, questo non è solo un semplice insieme di proprietà, dato che, include comportamenti specifici come la possibilità di cambiare l'aspetto di un controllo basandosi sugli eventi dell'utente, utilizzando gli event trigger. Per lo scopo del post, utilizzeremo invece dei Property Triggers, ovvero dei Trigger, che "osservano" una particolare Dependency Property per verificare se assume un certo valore. Nel caso in cui, il valore "osservato" sia quello atteso, si può impostare una qualche proprietà del  controllo Target, ad esempio il Background o il testo del ToolTip.

Aggiungiamo il codice del nostro Style personalizzato alla collezione delle risorse presenti nella Window:

1 <Style x:Key="CustomTextBoxStyle" TargetType="{x:Type TextBox}"> 2 <Style.Triggers> 3 <Trigger Property="Text" Value="SI"> 4 <Setter Property="Background" Value="Green" /> 5 <Setter Property="ToolTip" Value="Il valore SI è corretto"/> 6 </Trigger> 7 <Trigger Property="Text" Value="NO"> 8 <Setter Property="Background" Value="Red" /> 9 </Trigger> 10 </Style.Triggers> 11 </Style>

Il codice su esposto è relativamente semplice: in entrambi i trigger andiamo a monitorare la proprietà Text del controllo TextBox. Se questo assume il valore "SI" (case-sensitive), impostiamo  la proprietà Background del controllo su Green ed il testo da visualizzare con il ToolTip. Se invece Text è uguale a "NO" allora impostiamo il colore di Background su Red.

Il codice XAML della Window è il seguente:

1 [...] 2 <Grid> 3 <Grid.RowDefinitions> 4 <RowDefinition Height="117*" /> 5 <RowDefinition Height="145*" /> 6 </Grid.RowDefinitions> 7 <TextBox Margin="66,48,77,30" Name="textBox1" Style="{StaticResource CustomTextBoxStyle}" /> 8 </Grid> 9 </Window>

Supponiamo invece, di voler cambiare il valore del Background sul Giallo, quando si verificano più condizioni contemporaneamente, ad esempio quando il controllo TextBox ha il Focus e non contiene Testo. Per questo scopo utilizziamo invece un MultiTrigger:

1 <MultiTrigger> 2 <MultiTrigger.Conditions> 3 <Condition Property="Text" Value=""/> 4 <Condition Property="IsFocused" Value="True"/> 5 </MultiTrigger.Conditions> 6 <Setter Property="Background" Value="Yellow"/> 7 </MultiTrigger>

Codice XAML completo della Window WPF.

posted @ mercoledì 17 settembre 2008 11.15 | Feedback (0)
RegexStringValidator

Con la versione 2.0 del .Net Framework è stata aggiunta al namespace System.Configuration, la classe RegexStringValidator che permette di eseguire rapidatamente la validazione di stringhe utilizzando espressioni regolari. Supponendo di avere un'espressione del tipo ^\d+,\d{2}$, che permette di verificare se una stringa rappresenta un valore numerico con due cifre dopo la virgola, per validare una stringa, possiamo scrivere una funzione molto semplice:

1 Private Function IsValid(ByVal value As String) As Boolean 2 3 Dim regexValidator As New RegexStringValidator("^\d+,\d{2}$") 4 5 Try 6 regexValidator.Validate(value) 7 Return True 8 Catch ex As ArgumentException 9 'E'possibile sfruttuare l'istanza di ArgumentException per 10 'ottenere maggiori informazioni sull'eccezione 11 Return False 12 End Try 13 14 End Function

Utilizzando il metodo classico, avremmo potuto scrivere:

1 Dim regex As New System.Text.RegularExpressions.Regex("^\d+,\d{2}$") 2 Dim match As System.Text.RegularExpressions.Match = regex.Match("") 3 MessageBox.Show(match.Success)

Un'osservazione: Per verificare che un oggetto possa essere validato utilizzando RegexStringValidator, è sufficiente utilizzare il metodo d'istanza CanValidate della classe.

Technorati Tag:
posted @ mercoledì 17 settembre 2008 10.00 | Feedback (0)
[OT] World Names Profiler + Vacanze (finalmente)

World Names Profiler

Se siete curiosi di conoscere la diffusione del vostro cognome nel mondo, visitate questo sito.

Vacanze

Finalmente domani  inizieranno le mie vere vacanze estive (o quasi dato che siamo a settembre), staccando la spina da tutto prima dell'inizio del nuovo anno accademico e l'inizio dei nuovi progetti. Una pausa rigenerante. Alla prossima settimana.

Buon week-end a tutti

 

posted @ venerdì 5 settembre 2008 16.14 | Feedback (1)
News

View Pietro Libro's profile on LinkedIn

DomusDotNet
   DomusDotNet

Pietro Libro