Alessandro Del Sole's Blog

{ A programming space about Microsoft® .NET® }
posts - 1907, comments - 2047, trackbacks - 352

My Links

News

Your host

This is me! Questo spazio è dedicato a Microsoft® .NET®, di cui sono molto appassionato :-)

Cookie e Privacy

Disabilita cookie ShinyStat

Microsoft MVP

My MVP Profile

Microsoft Certified Professional

Microsoft Specialist

Xamarin Certified Mobile Developer

Il mio libro su VB 2015!

Pre-ordina il mio libro su VB 2015 Pre-ordina il mio libro "Visual Basic 2015 Unleashed". Clicca sulla copertina per informazioni!

Il mio libro su WPF 4.5.1!

Clicca sulla copertina per informazioni! E' uscito il mio libro "Programmare con WPF 4.5.1". Clicca sulla copertina per informazioni!

These postings are provided 'AS IS' for entertainment purposes only with absolutely no warranty expressed or implied and confer no rights.
If you're not an Italian user, please visit my English blog

Le vostre visite

I'm a VB!

Guarda la mia intervista a Seattle

Follow me on Twitter!

Altri spazi

GitHub
I miei progetti open-source su GitHub

Article Categories

Archives

Post Categories

Image Galleries

Privacy Policy

marzo 2008 Blog Posts

LINQ: Rimuovere la dichiarazione XML dagli elementi

Quando si utilizza LINQ-To-XML per scrivere su disco un file XML è necessario considerare che, anche qualora si lavori con oggetti XElement piuttosto che XDocument, l'utilizzo del metodo Save di tali oggetti aggiunge automaticamente la dichiarazione XML. Ciò potrebbe non essere il comportamento desiderato se si desidera creare file personalizzati dalla struttura XML ma dal comportamento custom. Considerate il seguente frammento:         Dim doc As XElement = <Prova>                                   <Nodo1>Valore</Nodo1>                               </Prova>             doc.Save("C:\prova.xml") Il risultato che produce è il seguente, pur non avendo scritto esplicitamente la dichiarazione XML: <?xml version="1.0"?> <Prova> <Nodo1>Valore</Nodo1> </Prova> Le alternative, quindi, sono due. L'utilizzo del metodo WriteTo dell'oggetto...

posted @ lunedì 31 marzo 2008 23:27 | Feedback (1) | Filed Under [ Visual Basic LINQ ]

Migliorare Vsi Builder

Tra un po' di giorni ho intenzione di rilasciare una versione aggiornata di Vsi Builder, il tool che ho realizzato per la Community di Visual Basic Tips & Tricks, che permette di creare pacchetti .Vsi per l'installazione e la distribuzione di contenuti aggiuntivi per Visual Studio 2005/2008 (info qui). Ho risolto alcuni bug che si verificano nel momento in cui sul pc è installato il solo Visual Studio 2008, inoltre la nuova release girerà su .NET Framework 3.5 poichè ho riscritto completamente l'engine di creazione dei pacchetti utilizzando LINQ-To-XML (per inciso, così facendo le righe di codice si sono dimezzate...). Il...

posted @ domenica 30 marzo 2008 17:35 | Feedback (1) | Filed Under [ .NET Framework Visual Basic C# Visual Studio 2008 ]

Esempio d'uso di anonymous types in LINQ-To-XML (VB 2008)

In questo post vediamo come utilizzare LINQ-to-XML (detto anche XLINQ) per leggere informazioni da un'ipotetica lista di contatti e popolare una ListView con queste informazioni, ricorrendo all'uso dei tipi anonimi. In un'applicazione Windows Forms di esempio è presente una ListView, con tre colonne: Nome, Città e ID (ricordate, quindi, di impostare la proprietà View su Details). Il seguente file Xml può costituire la base su cui lavorare: <?xml version="1.0"?> <Contatti>   <Contatto Nome="Alessandro" Città="Cremona" ID="1"/>   <Contatto Nome="Mario" Città="Belluno" ID="2"/>   <Contatto Nome="Diego" Città="Trieste" ID="3"/>   <Contatto Nome="Antonio" Città="Milano" ID="4"/> </Contatti> Ipotizzando di voler popolare la ListView al caricamento dell'applicazione con una...

posted @ domenica 30 marzo 2008 15:34 | Feedback (0) | Filed Under [ Visual Basic LINQ ]

Distribuzione di soluzioni VSTO 3.0 con Windows Installer

Segnalo questo interessante download dalla MSDN Code Gallery, che contiene esempi in Visual Basic e C# per la distribuzione di soluzioni basate sui Visual Studio 2008 Tools for Office, per il tramite dei progetti di distribuzione per Windows Installer. Poichè si tratta di una problematica a volte piuttosto complessa, soprattutto nell'ambito di installazioni tramite pacchetti .Msi piuttosto che ClickOnce, se siete interessati allo sviluppo con i VSTO si tratta di un download da non perdere. Lo trovate qui. Alessandro

posted @ sabato 29 marzo 2008 13:53 | Feedback (1) | Filed Under [ Visual Basic C# Visual Studio Tools for Office ]

Export selection as Code Snippet, il mio addin ora sulla Visual Studio Gallery

Tempo fa vi segnalai l'apertura della Visual Studio Gallery, un mini portale creato da Microsoft per la pubblicazione e lo sharing di add-in per Visual Studio. Ho voluto provare personalmente come funziona e ho condiviso su questa galleria il mio add-in Export selection as Code Snippet, di cui vi avevo parlato qui e che è disponibile come progetto open-source su CodePlex. Per condividere i propri componenti aggiuntivi con la comunità è sufficiente disporre di un account Windows Live ID e fornire un paio di dati aggiuntivi. Se siete produttori di addin per Visual Studio, la Gallery costituisce una grande opportunità di...

posted @ sabato 29 marzo 2008 13:17 | Feedback (1) | Filed Under [ Visual Studio 2008 ]

LINQ: Popolare una Combobox con il valore di elementi XML (VB 2008)

Mi sono trovato a rispondere a una richiesta in cui si aveva la necessità di popolare una Combobox con il valore degli elementi di un file XML nell'ambito di un'applicazione Windows Forms scritta in Visual Basic. Invece che utilizzare le classiche classi del namespace System.Xml, riscriviamo il tutto utilizzando LINQ-To-XML. Supponiamo di avere il seguente file XML, che contiene un elenco di fiori. Il nome di ciascun fiore dovrà poi essere aggiunto alla Combobox: <?xml version="1.0" encoding="utf-8" ?> <Fiori>   <Fiore>Rosa</Fiore>   <Fiore>Begonia</Fiore>   <Fiore>Margherita</Fiore> </Fiori> Nell'evento Load del form, poi, aggiungiamo il seguente codice:     Private Sub Form1_Load(ByVal sender As System.Object,...

posted @ venerdì 28 marzo 2008 17:55 | Feedback (1) | Filed Under [ Visual Basic LINQ ]

Video gratuiti on-line per imparare LINQ, con VB 2008

Segnalo questo sito, chiamato myVBProf, che offre la possibilità di seguire dei webcast on-line dedicati a LINQ in Visual Basic 2008. In particolare l'attenzione viene focalizzata su LINQ-To-Xml e LINQ-To-SQL, quindi due aspetti molto importanti di questa nuova feature. Considerato che il materiale è riferibile a Visual Basic 2008, mi sembra un'opportunità ulteriormente interessante. Si trova qui. Alessandro

posted @ giovedì 27 marzo 2008 18:46 | Feedback (2) | Filed Under [ Visual Basic LINQ ]

Sviluppare per Windows Live

Segnalo questi due post apparsi sul blog di Pietro Brambati, Developer Evangelist di MSDN Italia, il quale illustra l'utilizzo di alcuni interessanti tool per lo sviluppo basato sui servizi di Windows Live: Windows Live Tools per Visual Studio 2008 - February 2008 CTP; Windows Live Messenger Library. Pietro descrive i vari strumenti e mostra alcuni esempi di codice da utilizzare in applicazioni Web basate su .NET 3.5, come ad esempio l'aggiunta di finestre di conversazione alle proprie applicazioni. Molto interessante. Se vi interessa lo sviluppo per Windows Live Messenger (e la possibilità di includerne i servizi nei vostri siti Web) e, più in generale, per...

posted @ giovedì 27 marzo 2008 00:21 | Feedback (1) | Filed Under [ .NET Framework Visual Studio 2008 ]

Una nuova iniziativa dalla Newsletter "MSDN Flash"

  Segnalo questa nuova e interessante iniziativa del Team di MSDN Italia, grazie alla quale coloro che si iscriveranno alla NewsLetter MSDN Flash potranno partecipare all'estrazione di alcuni premi come una licenza di Visual Studio 2008, una maglia BE-IT, uno Smartphone e una consolle Microsoft XBox. Inoltre, in qualità di iscritti alla Newsletter, si potrà avere accesso a consistenti sconti nell'acquisto di libri di informatica, potendo altresì accedere ad un archivio di capitoli di esempio che verranno via via proposti dai migliori libri selezionati. Vi riporto un estratto del lancio dell'iniziativa:   MSDN Flash: la newsletter dedicata al mondo dello sviluppo applicativo e’ sempre più...

posted @ mercoledì 26 marzo 2008 19:22 | Feedback (1) | Filed Under [ .NET Framework Visual Basic C# Setup & Deployment Help Authoring Visual Studio Express Editions Visual Studio 2008 Visual Studio Extensibility Windows Presentation Foundation Windows Workflow Foundation Windows Communication Foundation Windows 7 Visual Studio Tools for Office LINQ ]

Nuovo screen-cast: introduzione a LINQ-To-SQL

Dopo un po' di tempo dai precedenti, rendo oggi disponibile un nuovo screen-cast su Visual Basic 2008, un'introduzione a LINQ-To-SQL. Si tratta, come negli altri casi, di una serie di esempi introduttivi, che non possono certamente coprire la vastità dell'argomento, ma che possono essere una buona base di partenza per approcciare la tecnica di programmazione in questione. In particolare viene dato risalto alla modalità fortemente tipizzata di interagire con i dati grazie a LINQ-To-SQL. Gli esempi prendono in considerazione il noto database Northwind, che ben si presta a scenari didattici vista la sua completezza (potete scaricarlo da qui se non lo avete)....

posted @ mercoledì 26 marzo 2008 17:25 | Feedback (1) | Filed Under [ Visual Basic LINQ ]

Un libro su VB 2008, per chi vuole cominciare (o migrare da VB 6)

Ultimamente ricevo molto spesso (e devo dire con grande piacere) e-mail di persone che mi chiedono consiglio su un buon libro per iniziare a utilizzare Visual Basic 2008. Segno che ormai l'evoluzione verso .NET sta diventando davvero capillare. Poichè lo faccio nel rispondere alle e-mail, ritengo giusto segnalare che tra un paio di settimane uscirà il nuovo libro su Visual Basic 2008 di Mario De Ghetto, che tengo a segnalare perchè conosco molto bene l'autore e quindi so con quale passione, dedizione, preparazione e professionalità ha scritto questo libro. Io ne ho scritti due e so bene cosa vuol dire passare...

posted @ mercoledì 26 marzo 2008 00:33 | Feedback (2) | Filed Under [ Visual Basic ]

Nuova serie di articoli dedicati a LINQ, su VB T&T

Oggi è uscito su Visual Basic Tips & Tricks un mio nuovo articolo, dal titolo Introduzione a LINQ: LINQ-To-Objects che illustra i principali concetti riferibili alle interrogazioni di collection di oggetti .NET utilizzando le nuove forme sintattiche messe a disposizione da .NET Framework 3.5. Con questo articolo diamo inizio a una mini-serie (4 in tutto, secondo le mie previsioni) di articoli introduttivi a questo importante aspetto di .NET 3.5. Ce ne occuperemo dal punto di vista del developer Visual Basic e affronteremo gli aspetti legati anche a LINQ-To-SQL, LINQ-To-Xml e LINQ-To-Dataset. Anche nei confronti di questa importante feature di VB 2008, la...

posted @ lunedì 24 marzo 2008 22:00 | Feedback (8) | Filed Under [ Visual Basic LINQ ]

LINQ: Esempio d'uso dell'operatore Like

LINQ consente di utilizzare un operatore di confronto chiamato Like. Tale operatore consente di confrontare la stringa specificata con un’altra e restituisce True laddove il confronto sia riuscito. Come sempre, vediamo un piccolo code snippet per chiarire il concetto. La seguente riga di codice ottiene l’elenco di tutti i file presenti nella directory corrente, memorizzandoli in una nuova collection di stringhe:         Dim files = My.Computer.FileSystem.GetFiles(CurDir) Ipotizziamo di voler estrarre dall’elenco dei file solo quelli che hanno estensione .Exe. L’obiettivo si può raggiungere utilizzando la seguente query expression di esempio:         Dim elencoFile = From file In...

posted @ lunedì 24 marzo 2008 16:50 | Feedback (1) | Filed Under [ Visual Basic LINQ ]

LINQ: utilizzo di condizioni con le clausole Skip e Take

In un precedente post abbiamo visto l’utilizzo delle clausole Skip e Take di LINQ per escludere o includere indiscriminatamente un determinato numero di elementi nel risultato di una query. In questo post vediamo come aggiungere una condizione secondo cui gli elementi debbano essere esclusi dal risultato. Considerate la seguente riga di codice che ottiene l’elenco dei processi attivi:         Dim elencoProcessi = Process.GetProcesses   Da tale elenco vogliamo escludere quelli il cui codice identificativo sia rappresentato da un numero inferiore a 5000. Tale obiettivo si raggiunge con la seguente query expression:         Dim risultato = From processo In...

posted @ lunedì 24 marzo 2008 00:59 | Feedback (0) | Filed Under [ Visual Basic LINQ ]

LINQ: Esecuzione di un conteggio con la clausola Aggregate (VB 2008)

Con LINQ è possibile eseguire dei calcoli nell’ambito delle query. In particolare, è possibile eseguire il conteggio, la somma e la media degli elementi recuperati mediante l’interrogazione. In questo post vedremo come eseguire il conteggio degli elementi rilevati tramite una query. L’esempio sarà, per forza di cose, volutamente semplice ed applicato a un oggetto di piccola entità. Supponiamo, quindi, di avere una classe Cliente che ha due proprietà, Nome (che indica il nome del cliente) e Città (che indica la città ove risiede il cliente): Class Cliente       'Sempre per velocità utilizziamo dei campi     'pubblici, ricordando che...

posted @ domenica 23 marzo 2008 22:11 | Feedback (0) | Filed Under [ Visual Basic LINQ ]

Windows Live FolderShare

Segnalo questo post di Alessandro Teglia di Microsoft, in cui descrive il nuovo servizio Windows Live che dà il titolo a questo post. Si tratta di un nuovo servizio di storage on-line, per uno spazio di 2 Gigabyte, che è possibile sincronizzare con una cartella del proprio pc mediante l'installazione di un apposito tool. Mi sembra un'altra ottima iniziativa, anche se a me basta SkyDrive! I dettagli nel post di Alessandro. Alessandro

posted @ sabato 22 marzo 2008 01:06 | Feedback (7) | Filed Under [ Varie ]

LINQ: le clausole Skip e Take nelle query con Visual Basic 2008

LINQ implementa due speciali clausole da utilizzare nelle query, Skip e Take. Skip consente di non includere nel risultato della query il numero specificato di elementi (in base all'ordine stabilito), mentre Take consente di aggiungere al risultato della query solo il numero specificato di elementi. Vediamo un esempio di codice per chiarire il discorso. Scriviamo, in primo luogo, una banalissima classe Nomi, con due campi Nome e ID in questo modo: Class Nomi       'Nota: per velocità usiamo dei campi pubblici,     'in uno scenario reale si implementano delle proprietà     Public Nome As String     Public Id As...

posted @ giovedì 20 marzo 2008 00:55 | Feedback (6) | Filed Under [ Visual Basic LINQ ]

Export selection as Code Snippet: il mio primo add-in per Visual Studio 2008

Ho finito di realizzare il mio primo add-in "serio" per Visual Studio 2008 (il run-time è .NET 3.5 per via di LINQ), che è possibile scaricare da questo indirizzo su CodePlex. Si tratta di un componente aggiuntivo per Visual Studio 2008, chiamato Export selection as Code Snippet, che aggiunge una nuova voce al menu contestuale dell'editor di codice e che consente di esportare la selezione sotto forma di Code Snippet riutilizzabile nell'IDE. Supporta la creazione di snippet per i linguaggi Visual Basic, Visual C# e XML. Il materiale disponibile è il seguente: Codice sorgente in Visual Basic 2008; Documento XPS che ne illustra...

posted @ mercoledì 19 marzo 2008 18:25 | Feedback (1) | Filed Under [ Visual Basic Visual Studio 2008 Visual Studio Extensibility ]

Aggiungere una LinkLabel a run-time, in un altro form

Oggi nei forum MSDN un utente ha chiesto come aggiungere a run-time una LinkLabel in un form, a sua volta richiamato a run-time facendo clic su un pulsante nel form principale. Avendo risposto al quesito, lo riporto qui. Per richiamare il nuovo form, si usa il consueto metodo di istanza Show (o ShowDialog). Nell'evento Load di questo nuovo form, si istanzia la LinkLabel, si aggiunge un delegate per l'evento Click e poi la si aggiunge al form stesso, così:     Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load           Dim myLabel As...

posted @ mercoledì 19 marzo 2008 00:08 | Feedback (0) | Filed Under [ Visual Basic ]

Iterare i valori di una colonna in una DataGridView (VB 2008)

Nell’utilizzare una DataGridView, mi è capitata la necessità di iterare tutte le righe di una data colonna, al fine di ottenerne il valore. Ho fatto un po’ fatica a trovare degli snippet al riguardo, anche in MSDN, alla fine sono riuscito in questo modo:                     Try                         For i = 0 To DataGridView1.RowCount - 1                             Dim valore As String = DataGridView1.Rows(i).Cells("NomeColonna").Value.ToString                               If valore IsNot Nothing Then                                 'Sostituire con l'azione da intraprendere                                 ‘sull'elemento recuperato                                 MessageBox.Show(valore)                             End If                         Next                       Catch ex As Exception                       End Try La colonna desiderata può essere recuperata anche mediante l’indice, quindi non solo mediante il...

posted @ martedì 18 marzo 2008 18:12 | Feedback (1) | Filed Under [ Visual Basic ]

Link utili da MSDN

Segnalo che Mario Fontana ha pubblicato nel suo blog, oltre ad alcuni link sulle Office Businness Applications, tutta una serie di link dedicati ad alcuni corsi on-line sullo sviluppo basato su .NET Framework 3.5 e Visual Studio 2008, anche su tecnologie introdotte dalla versione 3.0 del Framework stesso. Il post di Mario si trova a questo indirizzo e, se volete approfondire alcuni discorsi nell’ambito del nuovo ambiente di sviluppo Microsoft, vi consiglio di dare un’occhiata. Alessandro

posted @ martedì 18 marzo 2008 18:10 | Feedback (0) | Filed Under [ .NET Framework Visual Basic C# Visual Studio 2008 Visual Studio Tools for Office ]

Ottenere gli attributi di elementi XML con i Literals di Visual Basic 2008

LINQ-to-Xml mette a disposizione, come ormai noto, molti oggetti per leggere, creare ed interrogare documenti XML anche al fine di recuperare i dati di interesse dal loro interno, atteso che questo tipo di documento si usa anche com base dati. Tramite gli XML Literals di Visual Basic 2008 e appositi metodi Extension, è possibile ottenere contenuti specifici del documento XML. Ad esempio, considerate il seguente snippet:         Dim Nodi = <Nodi>                        <Nodo Nome="Primo nodo"/>                        <Nodo Nome="Secondo nodo"/>                        <NodoNonValido Nome="Terzo nodo"/>                        <Nodo Nome="Quarto nodo"/>                    </Nodi> L'elemento Nodi contiene al suo interno tre elementi Nodo e un elemento chiamato NodoNonValido....

posted @ domenica 16 marzo 2008 16:58 | Feedback (1) | Filed Under [ Visual Basic LINQ ]

Esempio di ordinamento in una query LINQ (con e senza tipi anonimi) in Visual Basic 2008

In un precedente post abbiamo visto come eseguire una semplicissima query LINQ su una collection di oggetti per estrarre solo i dati di nostro interesse. Riprendiamo quel post e il relativo codice per vedere due nuovi concetti: l'ordinamento tramite la clausola Order By e l'uso di un tipo anonimo. Supponiamo di avere una classe Impiegato, con due proprietà Nome e Ruolo: Class Impiegato       Private name As String     Private role As String       Property Nome() As String         Get             Return name         End Get         Set(ByVal value As String)             name = value         End Set     End Property       Property Ruolo() As String        ...

posted @ domenica 16 marzo 2008 16:34 | Feedback (1) | Filed Under [ Visual Basic LINQ ]

Ridirezione dell'output dalla Console in Visual Basic

Spesso mi diverto a creare delle piccole interfacce grafiche per strumenti utilizzabili solo dalla riga di comando, come alcuni del .NET Framework. In casi come questi è del tutto antiestetico che, quando si avvia il processo relativo all'applicazione esterna, l'output di quest'ultima venga mostrato nella Console. E' più opportuno, invece, che venga "catturato" e mostrato nell'applicazione Windows che lancia il processo esterno. Ipotizzando di avere un'applicazione Windows in cui ci sia una TextBox chiamata MiaTextBox, questo è il codice da usare:         Dim appEsterna As New Process           With appEsterna               .StartInfo.UseShellExecute = False             'Questa riga serve per...

posted @ domenica 16 marzo 2008 16:08 | Feedback (2) | Filed Under [ .NET Framework Visual Basic ]

Data-binding di una collezione generica a una DataGridView con Visual Basic 2008

L’antefatto di questo post è che avevo necessità di collegare tramite data-binding, in un'applicazione scritta in Visual Basic 2008, una DataGridView a una collection generica di classi personalizzate. Il fine da raggiungere è quello che, all’aggiunta, modifica o eliminazione di elementi all’interno della DataGridView, venisse automaticamente aggiornata la mia collection e viceversa. .NET Framework mette a disposizione un oggetto molto comodo, che è il BindingSource. Questo può essere utilizzato anche da designer, ma in questo caso non permette di collegare oggetti che non abbiano la definizione di una classe. Nel mio caso, devo istanziare una collection all’interno di un modulo e...

posted @ sabato 15 marzo 2008 16:40 | Feedback (10) | Filed Under [ Visual Basic ]

Scrivere sezioni CData con LINQ-to-Xml e Visual Basic 2008

I documenti XML non supportano l'inserimento di caratteri speciali all'interno dei nodi. Per questo scopo è possibile utilizzare delle apposite sezioni CData, al cui interno è possibile inserire dati dalla connotazione diversa da quella tipica XML e che, quindi, possono contenere anche caratteri speciali. LINQ mette a disposizione un apposito oggetto chiamato XCData, il cui costruttore riceve come argomento una stringa che viene inserita appunto come sezione CData all'interno di un documento XML. Questo esempio in Visual Basic 2008 mostra come inserire una sezione CData all'interno di un documento XML, utilizzando l'oggetto XCData:     Dim stringa As String = "Questa stringa contiene caratteri...

posted @ venerdì 14 marzo 2008 19:02 | Feedback (1) | Filed Under [ Visual Basic LINQ ]

StickyNotes per Visual Studio 2008

Dalla Visual Studio Gallery, segnalo questo interessante add-in per Visual Studio 2008 che aggiunge una finestra all'IDE e permette di aggiungere delle note come se si avesse a disposizione un blocco per scrivere appunti direttamente nell'ambiente di lavoro, riferendo le note a ciascun file della soluzione. L'add-in si chiama Sticky Notes ed è, peraltro, un progetto open-source reso anche disponibile nella Code Gallery di MSDN. Trovate tutti i dettagli sul progetto a questo indirizzo della Visual Studio Gallery. Alessandro

posted @ giovedì 13 marzo 2008 21:52 | Feedback (1) | Filed Under [ Visual Basic C# Visual Studio 2008 Visual Studio Extensibility ]

Ottenere l'elenco dei processi attivi con LINQ in VB 2008

Tramite una semplicissima query in LINQ, è possibile ottenere l'elenco dei processi attivi selezionando, tra l'altro, solo le proprietà di ciascun processo che ci interessano, separate da una virgola:         Dim elenco = From processo In Process.GetProcesses _                      Select processo.ProcessName, processo.Id La collection elenco, poi, conterrà solo le due proprietà selezionate (nel caso specifico il nome del processo e il suo numero identificativo). La collection può poi essere iterata come segue:         For Each proc In elenco             Console.WriteLine("Processo {0} - ID: {1}", proc.ProcessName, proc.Id.ToString)         Next         Console.Read() Molto più semplice delle precedenti versioni di Visual Basic, vero? Alessandro  

posted @ giovedì 13 marzo 2008 21:29 | Feedback (1) | Filed Under [ Visual Basic LINQ ]

Skater .NET: un offuscatore gratuito per .NET Framework

Segnalo la disponibilità di un tool chiamato Skater .NET, che permette di offuscare i propri assembly managed al fine di fornire una qualche protezione contro tentativi di decompilazione non autorizzata. Ve lo segnalo perchè è disponibile un'edizione Lite che è completamente gratuita e che può essere scaricata da questo indirizzo, presso il quale potrete anche reperire ulteriori informazioni sul tool. Se l'edizione gratuita di Dotfuscator fornita con Visual Studio 2005/2008 non vi soddisfa e soprattutto, se non volete spendere un sacco di soldi per un offuscatore a pagamento... date un'occhiata a Skater .NET. Alessandro

posted @ martedì 11 marzo 2008 18:09 | Feedback (4) | Filed Under [ .NET Framework Visual Basic C# ]

Interazione tra LINQ e VSTO: Linq-to-Xml in Visual Basic 2008

In questo precedente post abbiamo visto come, all'interno di una soluzione a livello di un documento di Microsoft Word 2007, creata con i Visual Studio Tools for Office, sia possibile utilizzare LINQ per interrogare una serie di collection esposte dall'applicazione host. In quel frangente, dato un documento in cui due diversi utenti hanno applicato delle revisioni, abbiamo utilizzato LINQ-To-Objects per estrarre le revisioni apposte da uno solo dei due revisori. L'obiettivo di questo post è esattamente lo stesso, ma lo raggiungeremo utilizzando LINQ-To-Xml. In sostanza, creeremo un documento Xml al quale aggiugneremo dei nodi in maniera dinamica. Detti nodi conterranno i dati...

posted @ lunedì 10 marzo 2008 18:31 | Feedback (1) | Filed Under [ Visual Basic Visual Studio Tools for Office LINQ ]

Creare un gadget per Windows Vista con Microsoft PopFly

Vi ricordate di Microsoft PopFly, il network di Microsoft per la condivisione di progetti per Visual Studio e di applicazioni Web basate su Silverlight? ne abbiamo parlato altre volte in questo blog e molti di voi si sono iscritti al servizio (ricordo che è sufficiente avere un account Windows Live). In questo post vi voglio mostrare come utilizzare PopFly per creare un gadget per Windows Vista. Per me è stata la scusa per creare un gadget per ricevere i feed RSS di questo blog, da farvi scaricare da qui :-) In primo luogo, dopo aver eseguito l'accesso a PopFly, create un nuovo...

posted @ lunedì 10 marzo 2008 18:09 | Feedback (6) | Filed Under [ Windows Presentation Foundation Windows 7 ]

Sviluppo Office con Visual Studio 2008: link utili da MSDN

Per coloro che sono interessati allo sviluppo di OBA (Office Businness Applications) o, più in generale, di soluzioni per Office 2007 System, segnalo che Mario Fontana (Architect Evangelist di MSDN Italia) ha pubblicato una serie di link utili per questo tipo di sviluppo. Ne ho trovati molti davvero interessanti, in particolare la Microsoft Office Interactive Developer Map, un'applicazione WPF (raggiungibile tramite meccanismo ClickOnce) che, tramite interazione con l'utente, mostra tutte le risorse correlate a una determinata area tematica. Qui il post di Mario. Alessandro

posted @ domenica 9 marzo 2008 23:37 | Feedback (0) | Filed Under [ Visual Studio Tools for Office ]

WinGAC, un nuovo progetto open source su CodePlex in VB 2008

Molti di coloro che solitamente passano da questo blog hanno scaricato un mio piccolo programmino chiamato WinGAC, che permette, tramite interfaccia grafica di installare uno o più assembly .NET nella Global Assembly Chache senza più dover ricorrere manualmente all'utility a riga di comando GACUtil.exe. Ora quest'applicazione è disponibile come progetto open-source su CodePlex, con l'aggiunta del supporto per .NET Framework 3.5 e ricompilata in Visual Basic 2008. Qui sotto c'è uno screen-shot: Mentre il progetto è disponibilie a questo indirizzo. Potete scaricare il codice sorgente oppure il solo installer. Spero di aver fatto cosa utile :-) Alessandro

posted @ domenica 9 marzo 2008 16:42 | Feedback (5) | Filed Under [ .NET Framework Visual Basic ]

Vsi Builder vola a 2000 download!

Vsi Builder, il tool per sviluppatori pubblicato a dicembre 2007 e che ho realizzato per la Community di VB T&T, ha giusto oggi raggiunto quota 2000 download! Anche in questa occasione non posso che essere soddisfatto del risultato ottenuto, grazie a tutti coloro che lo hanno scaricato (e che spero lo stiano anche usando! :-) ). L'edizione inglese ha superato i 320, non male. Se non sapete ancora cosa fa Vsi Builder e volete avere informazioni, fate clic qui. Vi ricordo che è un programma freeware! Alessandro

posted @ sabato 8 marzo 2008 19:41 | Feedback (0) | Filed Under [ .NET Framework Visual Basic C# Visual Studio Express Editions Visual Studio 2008 Visual Studio Extensibility ]

Esempio di interazione tra LINQ e VSTO (con Visual Basic 2008)

Come ormai sapete, LINQ è quella novità del .NET Framework 3.5  che consente di eseguire interrogazioni su un gran numero di tipologie di sorgenti dati. Tra le tantissime possibilità che abbiamo in .NET, possiamo utilizzare LINQ per interrogare, ad esempio, le proprietà di un documento di Microsoft Word 2007 all'interno di una soluzione a livello di documento creata con i Visual Studio 2008 Tools for Office. Nel seguente esempio, prendiamo in considerazione un documento di Word 2007 all'interno del quale hanno partecipato due diversi revisori (nella fattispecie due account utente sul mio pc), ognuno dei quali ha aggiunto le proprie correzioni. Come potete...

posted @ sabato 8 marzo 2008 18:57 | Feedback (1) | Filed Under [ Visual Basic Visual Studio Tools for Office LINQ ]

Creare un riquadro attività per Word 2007 con Visual Basic 2008 e VSTO

Segnalo che in area Articoli di VB T&T è stato appena pubblicato un mio nuovo pezzo dal titolo "Creare un riquadro attività per Word 2007 con Visual Basic 2008 e VSTO" e che potete raggiungere facendo clic qui. Si tratta di un articolo introduttivo alla creazione di riquadri attività per le applicazioni Office 2007, scrivendo codice Visual Basic e per il tramite dei Visual Studio 2008 Tools for Office. Per un'overview più generale sui VSTO, potete leggere questo mio articolo su MSDN. Alessandro

posted @ sabato 8 marzo 2008 17:07 | Feedback (0) | Filed Under [ Visual Basic Visual Studio Tools for Office ]

Una chat con Expression Blend e Silverlight 2

Segnalo questo fantastico post di Scott Guthrie, il quale illustra come creare un'applicazione di chat completa utilizzando Expression Blend 2.5, Silverlight e Visual Studio 2008. E' un ottimo punto di partenza per imparare molte cose su WPF, Silverlight e Blend. Dategli un'occhiata, ve lo consiglio. Alessandro

posted @ sabato 8 marzo 2008 16:08 | Feedback (2) | Filed Under [ Windows Presentation Foundation ]

Formattare il testo di un documento Word 2007 con i VSTO e VB 2008

In questo post voglio mostrare un piccolissimo esempio di come, da codice Visual Basic 2008, sia possibile formattare il testo di un documento di Microsoft Word 2007, grazie ai Visual Studio Tools for Office. In primo luogo, il progetto da creare è a livello di documento (quindi Word 2007 Document). In secondo luogo, alcune considerazioni: un documento Word è costituito, essenzialmente, da paragrafi, rappresentati da oggetti Paragraph. Il testo contenuto in ciascun Paragraph è rappresentato da oggetti Range; per ciascun oggetto Range è poi possibile impostare le proprietà del testo. A creazione del progetto completata, digitate del testo nel documento e aggiungete un pulsante dalla toolbox,...

posted @ venerdì 7 marzo 2008 21:45 | Feedback (2) | Filed Under [ Visual Basic Visual Studio Tools for Office ]

Visual Studio 2008 Standard supporta Windows Installer

Oggi ho installato l'edizione Standard di Visual Studio 2008, ricevuta in qualità di partecipante all'evento Launch 2008 per la presentazione di Microsoft Visual Studio 2008. Tra le varie feature dell'edizione in questione, ho visto che finalmente sono stati inclusi i progetti di distribuzione per Windows Installer, per il deploy delle proprie applicazioni. A mio avviso è un enorme passo in avanti rispetto all'edizione Standard di Visual Studio 2005, che prevedeva solo ClickOnce. In questo modo sarà possibile scegliere quale tra le due metodologie di distribuzione adottare, senza sentirsi "inferiori" rispetto a Visual Studio 2008 Professional o Team System. Nel mio caso specifico...

posted @ venerdì 7 marzo 2008 18:59 | Feedback (0) | Filed Under [ Visual Basic Setup & Deployment Visual Studio 2008 ]

WPF e Expression Blend: Inserire un video in 3D

Segnalo questo interessantissimo post dell'amico Igor Damiani, che illustra come attivare la riproduzione a 3D di un video in un'applicazione WPF, utilizzando il designer di Microsoft Expression Blend. Ho seguito personalmente le sue istruzioni e il risultato è ottimo. Complimenti a Igor e un invito a voi a dargli un'occhiata! Alessandro

posted @ venerdì 7 marzo 2008 14:13 | Feedback (0) | Filed Under [ Windows Presentation Foundation ]

Microsoft Expression Studio 2 Beta

Segnalo la disponibilità della nuova Beta della suite Microsoft Expression Studio, per la produzione di materiale ad elevati contenuti multimediali. Tra le applicazioni della suite ricordo Expression Blend ed Expression Design (dedicate alla grafica e al disegno successivamente reimpiegabile in WPF) nonchè Expression Web per la creazione di siti Web. Se non avete mai provato queste applicazioni, fidatevi di me.. approfittate di questa Beta! Pare che Expression Blend 2.5, però, non supporti SilverLight 2.0. E' possibile scaricare Expression Studio 2 Beta da questo indirizzo. Se siete interessati a questo genere di argomenti, leggete anche questa segnalazione di Antonio. Alessandro

posted @ venerdì 7 marzo 2008 00:34 | Feedback (2) | Filed Under [ .NET Framework Windows Presentation Foundation ]

Primi screen-cast su LINQ in VB 2008 disponibili

Proseguendo nell'iniziativa dei miei screen-cast su Visual Studio 2008, volevo comunicarvi che ho reso disponibili i primi tre video introduttivi a LINQ e alle novità nel linguaggio Visual Basic, giunto alla versione 9.0. Ho utilizzato Visual Basic 2008 Express Edition, di modo che tutti possano provare gli argomenti senza difficoltà. Il seguente è l'elenco degli screen-cast (fare click per scaricare): Le novità del linguaggio di Visual Basic 2008 - prima parte LINQ-To-Objects - prima parte LINQ-To-Objects - seconda parte Come sempre, potete visualizzare l'elenco completo dei tutorial facendo clic qui. Sono sempre bene accetti feedback, suggerimenti e critiche. Preciso che si tratta di tutorial introduttivi, LINQ è un...

posted @ giovedì 6 marzo 2008 23:07 | Feedback (0) | Filed Under [ Visual Basic LINQ ]

Chiarimenti sugli effetti Bitmap in WPF

Nei giorni scorsi diverse persone mi hanno scritto chiedendomi chiarimenti in merito all'applicazione ad immagini dei c.d. BitmapEffects di Windows Presentation Foundation, prevalentemente dopo aver letto alcuni precedenti interventi in questo blog. In particolare, le persone che mi hanno scritto lamentavano l'impossibilità di applicare gli effetti bitmap, ricevendo errori non precisati di libreria o relativi alla mancanza di tali oggetti nel namespace System.Drawing.Drawing2D di .NET Framework. Nel far presente che è comunque opportuno (non è una critica ma un dato di fatto) capire con quale tecnologia si sta operando prima di mettere mano al codice, ribadisco che i BitmapEffects sono prerogativa esclusiva di Windows...

posted @ giovedì 6 marzo 2008 19:04 | Feedback (9) | Filed Under [ Visual Basic Windows Presentation Foundation ]

GUI open-source per Microsoft SharePoint Worflow Package Generator, in VB 2008

Ho pubblicato un nuovo progetto open-source su CodePlex, dal titolo "GUI for Microsoft SharePoint Worflow Package Generator". Si tratta di un'interfaccia grafica scritta in Visual Basic 2008 e basata su WPF, dedicata al predetto tool a riga di comando di Microsoft, che viene distribuito con i Visual Studio Tools for Office Power Tools. Tale strumento permette di creare packages per la distribuzione su server di Workflow per SharePoint 2007 (anche per il tramite di appositi script per MSBuild), ma, come detto, trattandosi di uno strumento a riga di comando, ho pensato che una GUI fosse utile a coloro che sono interessati a tale...

posted @ mercoledì 5 marzo 2008 18:46 | Feedback (0) | Filed Under [ Visual Basic Windows Presentation Foundation Visual Studio Tools for Office ]

LINQ: gli esempi Visual Basic del mio blog nella Code Gallery di MSDN

Ho deciso di pubblicare gli esempi di codice relativi a LINQ-To-Xml in Visual Basic 2008, che avete trovato in questo blog, anche nella Code Gallery di MSDN. E' stata anche una scusa per iscrivermi alla Gallery di Microsoft e capire come funziona questo servizio (molto simile a CodePlex, ma con un'unica licenza selezionabile e prettamente dedicata a singoli esempi di codice piuttosto che a interi progetti open source). Nella pagina dedicata troverete una serie di archivi zip scaricabili, contenenti codice sorgente in Visual Basic 2008, tradotti in lingua inglese e rilasciati secondo la Microsoft Public License. L'home page della risorsa si trova...

posted @ mercoledì 5 marzo 2008 00:47 | Feedback (0) | Filed Under [ Visual Basic LINQ ]

VB 2008 e il supporto a XML con LINQ

Come avrete letto in più sedi, la novità forse più importante di .NET Framework 3.5, che influenza tutti i linguaggi gestiti, è LINQ. Con questo post iniziamo una serie di articoletti brevi dedicati alle caratteristiche di LINQ e alle novità che esso introduce. Tra le varie fantastiche cose che LINQ permette di fare, osserviamo come questo aggiunga a Visual Basic il supporto per il linguaggio XML in fase di scrittura del codice (LINQ to Xml). Considerate questo brevissimo snippet, che crea un elemento XML contenente i titoli di alcuni articoli che ho scritto per VB T&T:         Dim linqSample = <Articoli>

posted @ lunedì 3 marzo 2008 21:04 | Feedback (2) | Filed Under [ Visual Basic Visual Studio Express Editions LINQ ]

LINQ: creare nodi XML tramite query (Visual Basic 2008)

Con LINQ-to-Xml è possibile aggiungere nodi ed elementi XML in maniera dinamica. Ciò significa che non siamo vincolati a documenti XML dal contenuto prestabilito, come ad esempio quello del precedente post. Infatti, a partire da una sorgente dati e con una query, è possibile creare nodi, elementi ed attributi a seconda dei dati desiderati. Un esempio sarà sicuramente chiarificatore. Supponiamo di avere una collection generica di sviluppatori: Alessandro, Mario e Diego (i nomi non sono affatto casuali! :-)). Alessandro e Mario sviluppano in .NET, Diego in VB 6. Dalla nostra collection vogliamo estrarre solo (ovviamente..) gli sviluppatori .NET e creare degli elementi XML...

posted @ lunedì 3 marzo 2008 21:03 | Feedback (1) | Filed Under [ Visual Basic LINQ ]

LINQ: Salvare un file XML con Visual Basic 2008

Nell'utilizzo di LINQ-to-Xml, la classe XDocument rappresenta un documento XML. Questa classe espone un comodissimo metodo Save che permette di salvare su disco il documento XML su cui si sta lavorando. Considerate il seguente snippet, che evidenzia la comodità dei cosiddetti XML Literals (la possibilità di utilizzare tag XML direttamente nel codice Visual Basic):         Dim doc As XDocument = <?xml version="1.0"?>                                <Sviluppatori>                                    <DotNet>                                        <Nome>Alessandro</Nome>                                        <Nome>Mario</Nome>                                    </DotNet>                                    <VB6>                                        <Nome>Diego</Nome>                                    </VB6>                                </Sviluppatori>           doc.Save("C:\developers.xml") Come potete osservare, l'utilizzo del metodo Save è davvero semplice. Quello che è importante ricordare è che, se utilizziamo la classe XDocument, dobbiamo...

posted @ lunedì 3 marzo 2008 20:18 | Feedback (3) | Filed Under [ Visual Basic LINQ ]

Esempi dalla Code Gallery di MSDN

Segnalo alcuni interessanti esempi di codice, pubblicati sulla MSDN Code Gallery: PowerCommands for Visual Studio 2008, un add-in che aggiunge comandi ai vari menu di contesto semplificando molte operazioni. Ne riporto a titolo di esempio una, molto cara a tutti: la pulizia della lista dei progetti recenti! OBA Sample Application Kit, una sorta di starter kit per le Office Businness Applications SOA'zing MSMQ with WCF, un esempio di applicazione che mostra l'integrazione tra Microsoft Messaging Queue e Windows Communication Foundation Se avete un po' di tempo, sfogliate la Code Gallery di MSDN. Ci sono tanti di quegli esempi, video e tutorial che non immaginate...

posted @ sabato 1 marzo 2008 20:18 | Feedback (0) | Filed Under [ .NET Framework Visual Studio 2008 Visual Studio Extensibility Windows Communication Foundation Visual Studio Tools for Office ]

Visual Studio Gallery

Dal blog di Mario Fontana apprendo che Microsoft ha creato un nuovo sito, chiamato Visual Studio Gallery, e che contiene tutta una serie di risorse dedicate all'IDE di Visual Studio 2008. Sono andato a curiosare e ci sono effettivamente molti componenti interessanti, suddivisi per categoria (ad es. Security, Setup & Deploy, Programming Languages, Controls & Libraries). Se volete incrementare la produttività dell'IDE, adattandolo alle vostre esigenze sfruttando la Visual Studio Extensibility, questo è sicuramente un gran bel portale. Unico neo: i componenti freeware sono pochi, molti sono a pagamento o free trial. Ad ogni buon conto, la gallery si trova qui. Alessandro

posted @ sabato 1 marzo 2008 20:12 | Feedback (0) | Filed Under [ Visual Studio Extensibility ]

Powered by:
Powered By Subtext Powered By ASP.NET