Alessandro Del Sole's Blog

{ A programming space about Microsoft® .NET® }
posts - 1908, 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

giugno 2008 Blog Posts

VB 2008: Gli ultimi post di Mario, in formato Code Snippet :-)

Ho letto e apprezzato gli ultimi post del caro amico Mario De Ghetto su Visual Basic 2008 e ho pensato di produrre dei relativi code snippet riutilizzabili nell'IDE di Visual Studio 2008/Visual Basic 2008 Express. I post da cui ho tratto gli snippet sono i seguenti: [VB.NET] Scaricare il contenuto HTML di una pagina web [VB.NET] Estrarre il testo da una pagina HTML [VB.NET] Aggiungere un collegamento ai Preferiti I code snippet sono contenuti, come di consueto, in un pacchetto di installazione in formato .Vsi, creato, come di consueto, col mio tool di Community Vsi Builder 2008. L'archivio è scaricabile da qui. Mi piace questa forma...

posted @ domenica 29 giugno 2008 15:50 | Feedback (2) | Filed Under [ Visual Basic ]

Da VB 6 a VB 2008 in pillole - finestra sempre in primo piano

In questo post, Andrea Lisi ci mostra come, in Visual Basic 6, sia possibile fare in modo che una finestra sia sempre in primo piano, sfruttando una funzione API di Windows e alcune costanti della piattaforma. In Visual Basic 2008, lo stesso obiettivo si raggiunge in modo ampiamente più semplice. Ciascun form, infatti, espone una proprietà chiamata TopMost. Se impostata a True, la finestra rimane sempre in primo piano. La proprietà si imposta tramite designer oppure tramite codice, nel seguente, banalissimo modo:         '"Me" indica il form corrente           'Sempre in primo piano         Me.TopMost = True          ...

posted @ giovedì 26 giugno 2008 16:19 | Feedback (10) | Filed Under [ Visual Basic ]

Da VB 6 a VB 2008 - determinare se l'applicazione è eseguita nell'IDE

In questo post, Andrea Lisi ci mostra come determinare se un'applicazione scritta in Visual Basic 6 è in esecuzione sotto il debugging da parte dell'IDE. In Visual Basic 2008 si può utilizzare la proprietà IsAttached della classe Debugger, appartenente alla libreria di classi base di .NET Framework. Questa classe attiva la comunicazione tra codice e debugger; la proprietà menzionata permette di stabilire se un debugger è collegato all'applicazione, quindi, con una certa sicurezza, di capire se la stessa è in esecuzione sotto il controllo dell'IDE. Un esempio, con poche righe di codice:     Sub Main()        ...

posted @ giovedì 26 giugno 2008 00:57 | Feedback (3) | Filed Under [ .NET Framework Visual Basic ]

Percorso formativo Microsoft Silverlight Beta 2 su MSDN Italia

Segnalo, fresca fresca di giornata, la notizia dell'aggiornamento del percorso formativo prodotto da MSDN Italia per lo sviluppo destinato a Microsoft Silverlight, riproposto secondo le novità introdotte dalla Beta 2 dell'ormai noto plug-in per la realizzazione di applicazioni Web dagli elevati contenuti multimediali. Il percorso formativo, che si compone di alcuni webcast, è disponibile a questo indirizzo. Alessandro

posted @ mercoledì 25 giugno 2008 20:13 | Feedback (1) | Filed Under [ Windows Presentation Foundation ]

Da VB 6 a VB 2008 in pillole - prima parte

Coloro che seguono con assiduità la nostra community, avranno avuto modo di leggere i post di Andrea Lisi, inerenti la programmazione in Visual Basic 6. Leggendo tali post, ho avuto l'idea di una nuova iniziativa, col beneplacito di Andrea: "tradurre" in Visual Basic 2008 i frammenti di codice da lui illustrati, al fine di far vedere la potenza e la semplicità di Visual Basic 2008 e .NET Framework nei confronti del vecchio VB 6. Si tratta, ovviamente, di frammente di codice indirizzati a chi si sta ancora chiedendo il perchè dei vantaggi di passare a .NET e non a coloro che già...

posted @ mercoledì 25 giugno 2008 16:23 | Feedback (4) | Filed Under [ Visual Basic ]

Provider Oracle di esempio per ADO.NET Entity Framework

In attesa del rilascio di nuovi provider da parte di Microsoft per l'ADO.NET Entity Framework (ricordo che allo stato attuale della Beta l'unico disponibile è quello per SQL Server), c'è già qualcuno che si cimenta nella realizzazione di provider custom, come questo pubblicato sulla Code Gallery di MSDN e che si occupa di fornire supporto ai database Oracle. Poichè il procedimento di mapping è poi gestito dall'Entity Framework, si potrà utilizzare LINQ-to-Entities per gestire e interrogare i dati. Si trova a questo indirizzo, con codice sorgente a corredo. Alessandro

posted @ martedì 24 giugno 2008 13:48 | Feedback (3) | Filed Under [ .NET Framework LINQ ]

MSDN Community Links di Giugno 2008

Segnalo che sul blog del Team di MSDN Italia è appena stata pubblicata una serie di link ad articoli pubblicati nelle più importanti Community italiane dedicate allo sviluppo su tecnologia .NET. Ovviamente, non potevamo mancare anche noi di Visual Basic Tips & Tricks con ben 4 articoli segnalati! Se volete dare un'occhiata, il post di MSDN si trova a questo indirizzo. Alessandro

posted @ lunedì 23 giugno 2008 14:47 | Feedback (2) | Filed Under [ .NET Framework Visual Basic LINQ ]

Utilizzare la toolbox di Visual Studio per i frammenti di codice

Magari molti di voi lo sanno già, comunque volevo segnalarvi che è possibile utilizzare la casella degli strumenti di Visual Studio anche come repository di frammenti di codice. Con l'editor attivo, selezionate un frammento di codice e trascinatelo sulla casella degli strumenti. Come potete vedere dalla figura seguente, lo snippet diventa a tutti gli effetti un elemento della toolbox, del quale potete vedere l'anteprima passando col puntatore del mouse su di esso. Per riutilizzare il frammento, basta un semplice doppio clic. Utile no? Alessandro

posted @ sabato 21 giugno 2008 13:51 | Feedback (2) | Filed Under [ Visual Basic Visual Studio 2008 ]

LINQ: Il metodo extension ToDictionary

Tra i vari operatori di conversione disponibili in LINQ, per convertire in altro tipo di dato il risultato di una query, esiste un metodo extension chiamato ToDictionary che converte, per l'appunto, un risultato IEnumerable o IQueryable in una collezione di tipo Dictionary(Of T, T). In questo esempio vedremo il metodo in azione in uno scenario LINQ-to-Objects, ma si può utilizzare anche con gli altri provider LINQ. Supponiamo di avere un'applicazione Console in cui ci sia la classica e veloce classe Person: Public Class Person       'Campi pubblici per praticità     Public Name As String     Public LastName As...

posted @ sabato 21 giugno 2008 12:31 | Feedback (1) | Filed Under [ Visual Basic LINQ ]

Interoperabilità tra ADO.NET e LINQ-to-SQL

L'utilizzo classico di ADO.NET e LINQ-to-SQL possono convivere in un sistema ibrido di interoperabilità. Dopo aver stabilito l'origine dati è possibile, ad esempio, aprire una SqlConnection e passarne l'istanza al DataContext per eseguire interrogazioni su quest'ultimo oggetto. Nella presente dimostrazione facciamo riferimento al solito database Northwind. Innanzitutto, per pura praticità, creiamo un progetto Visual Basic per la Console. Tramite le modalità che già conosciamo, specifichiamo il database sopra citato come origine dati, affinchè Visual Studio generi per noi la stringa di connessione e un DataSet. Come tabella da interrogare successivamente scegliamo, sempre come esempio, la tabella Customers. Analogo procedimento seguiamo nell'aggiungere una classe LINQ-to-SQL...

posted @ mercoledì 18 giugno 2008 23:01 | Feedback (1) | Filed Under [ Visual Basic LINQ ]

LINQ-to-Xml: leggere feed RSS in Visual Basic, con l'inferenza di schemi

Poco tempo fa abbiamo parlato, in questo post, di come sia possibile leggere feed RSS tramite codice Visual Basic 2008, sfruttando il metodo Load della classe XDocument che, oltre a leggere documenti Xml, può recuperare da Internet contenuti nel medesimo formato. Diverso tempo addietro, in quest'altro post, parlammo di un tool Microsoft chiamato Xml To Schema Inference Wizard, che aggiunge un modello di elemento a Visual Studio, in grado di generare schemi Xml a partire dai documenti Xml specificati. Grazie allo schema generato, viene abilitato il supporto di Intellisense anche nelle query LINQ-to-Xml che sfruttano la simbologia tipica di Visual Basic...

posted @ martedì 17 giugno 2008 19:28 | Feedback (6) | Filed Under [ Visual Basic LINQ ]

Creare un add-in "Text-to-speech" per Word 2007: il mio primo articolo sull'MSDN VB Dev Center

Non posso negare la soddisfazione che ho nel segnalare, finalmente, la disponibilità on-line del mio primo articolo sul Visual Basic Developer Center di MSDN, relativo alla creazione di un add-in per Word 2007 con i Visual Studio Tools for Office e Visual Basic 2008, in grado di sfruttare la tecnologia Text-to-speech di .NET Framework 3.5 per riprodurre, in forma vocale, il contenuto di un documento di Microsoft Word. L'articolo si trova a questo indirizzo, mentre è attualmente segnalato sia nell'home page del Visual Basic Developer Center che nell'Area Articoli del Visual Studio Tools for Office Developer Center. Il codice sorgente a corredo,...

posted @ sabato 14 giugno 2008 13:48 | Feedback (7) | Filed Under [ .NET Framework Visual Basic Visual Studio Tools for Office ]

LINQ-to-Xml: Generare dinamicamente documenti ordinati

Come ormai probabilmente sapete, LINQ offre una clausola chiamata Order By, che permette di ordinare il risultato di una query a seconda dell'oggetto specificato. Con pochi passaggi è possibile leggere un documento Xml, ordinarlo e riscriverlo secondo l'ordinamento desiderato, sfruttando le embedded expression. Dato, ad esempio, un file che è la rappresentazione Xml della tabella Categories del database Northwind, decidiamo di ordinarlo in base alla descrizione della categoria. Questo il contenuto del file: <?xml version="1.0" encoding="utf-8"?> <Categories>   <Category CategoryID="1" CategoryName="Beverages" Description="Soft drinks, coffees, teas, beers, and              ales"></Category>   <Category CategoryID="2" CategoryName="Condiments" Description="Sweet and savory sauces, relishes, spreads,...

posted @ sabato 14 giugno 2008 12:48 | Feedback (1) | Filed Under [ Visual Basic LINQ ]

Help Authoring: Microsoft Namespace# 2.0

Nell'SDK di Visual Studio 2005 era incluso un comodo strumento unsupported, chiamato Microsoft Namespace, che consentiva di visualizzare tutte le collection e i namespace registrati sul sistema, con riferimento al sistema delle guide integrate di Visual Studio 2005 (per intenderci, tutte le guide che visualizzate con Microsoft Document Explorer), basate sulla tecnologia Microsoft Help 2.x (nome in codice Havana). Ho parlato di Namespace.exe anche nel Capitolo 7 del mio libro su Visual Basic 2005, vedendo come gestire le collection con questo utile strumento. La versione 2008 dell'SDK di Visual Studio, purtroppo, non contiene più questo strumento. Fortunatamente, dopo diversi mesi dal rilascio...

posted @ mercoledì 11 giugno 2008 16:49 | Feedback (1) | Filed Under [ Help Authoring Visual Studio 2008 ]

Help Authoring: Microsoft SandCastle rimosso da CodePlex

Dopo un bel po' di tempo torno ad occuparmi di alcuni tool dedicati alla produzione di file della guida compilati per le nostre applicazioni .NET. In questa circostanza mi riferisco, in particolare, a Microsoft SandCastle, un grande strumento di cui abbiamo diffusamente parlato in questo blog e nel mio libro su Visual Basic 2005, che consente, a partire dai commenti XML inseriti nei file di codice, di generare documentazione compilata per i propri sorgenti, librerie di classi in particolare. Microsoft SandCastle era ospitato, fino a pochi giorni fa, su CodePlex, il noto sito di Microsoft dedicato all'open-source. Tuttavia, poichè il codice...

posted @ mercoledì 11 giugno 2008 13:44 | Feedback (1) | Filed Under [ Help Authoring ]

Nuova versione del mio add-in per eliminare l'MRU di VS 2008

Ho appena pubblicato una nuova versione del mio add-in per la pulizia dei progetti recenti di Visual Studio 2008, disponibile sempre come codice sorgente che come pacchetto di installazione in formato .Vsi realizzato con Vsi Builder. Due novità: la richiesta di conferma prima di eliminare i progetti dall'elenco e la possibilità di selezionare quali progetti. Uno screen-shot: E' disponibile un'edizione anche per Visual Basic 2008 Express come tool esterno, ma se vi occorre la cancellazione anche dei file recenti, oltre che dei progetti, per questa specifica edizione vi suggerisco quella di Diego Cattaruzza. La mia si limita all'elenco dei progetti, era questa...

posted @ domenica 8 giugno 2008 13:40 | Feedback (1) | Filed Under [ Visual Basic Visual Studio Express Editions Visual Studio 2008 Visual Studio Extensibility ]

Disponibile Silverlight 2.0 Beta 2

Giro la notizia pubblicata dal team di MSDN Italia, che annuncia la disponibilità della Beta 2 di Silverlight 2.0. Sono disponibili per il download, oltre al plug-in, le nuove versioni dei tool per lo sviluppo in Visual Studio 2008 e la CTP di giugno 2008 di Microsoft Expression Blend 2.5. A quanto pare le novità sono molte, ce ne parla Pietro Brambati nel post sul blog di MSDN Italia e in un video dedicato, insieme alla segnalazione di link e strumenti utili. Il post si trova a questo indirizzo. Alessandro

posted @ sabato 7 giugno 2008 18:17 | Feedback (1) | Filed Under [ .NET Framework Visual Basic C# Visual Studio 2008 Windows Presentation Foundation ]

Trucchi sull'IDE di Visual Basic 2008 dal TechEd US 2008

Segnalo la disponibilità, nella Code Gallery di MSDN, del materiale (slide e progetti sorgenti dimostrativi) trattato nel TechEd US 2008, con riferimento a Visual Basic 2008 e al suo IDE. La risorsa è intitolata TechEd US 2008: Microsoft Visual Basic IDE Tips & Tricks (TLA325) e la potete trovare a questo indirizzo. Alessandro

posted @ venerdì 6 giugno 2008 14:10 | Feedback (2) | Filed Under [ Visual Basic ]

LINQ & WPF: Creare file di codice XAML e utilizzarne i controlli con VB 2008

LINQ-to-Xml permette di creare e leggere agevolmente qualunque tipo di file a struttura Xml. Da questo concetto non sono esclusi i file .Xaml, che caratterizzano il lato “design” delle applicazioni basate su Windows Presentation Foundation.   In questo post vedremo come creare e leggere file .Xaml contenenti definizioni di interfaccia utente WPF, proprio utilizzando LINQ-to-Xml.   Lo scopo del gioco è questo: in WPF è possibile creare i cosiddetti FlowDocument, documenti dal contenuto dinamico e riadattabile al variare delle impostazioni dell’interfaccia. Se avete letto il capitolo 6 del mio libro su .NET 3.x, avete avuto modo di...

posted @ giovedì 5 giugno 2008 20:43 | Feedback (1) | Filed Under [ Visual Basic Windows Presentation Foundation LINQ ]

VSTO e VB 2008: Un pannello custom per Word 2007 che fa parlare il PC

Da qualche giorno nell'home page del Visual Studio Tools for Office Developer Portal, di MSDN, è indicizzato un mio progetto sorgente, costituente un riquadro attività personalizzato per Microsoft Word 2007, creato coi VSTO e Visual Basic 2008, che sfrutta le funzionalità di Text-to-Speech di .NET 3.x per riprodurre in forma vocale il contenuto di un documento di Word. Il codice sorgente, già scaricabile da alcuni giorni, è un'anteprima, nel senso che entro pochi giorni verrà pubblicato un mio articolo nell'area Community del Visual Basic Developer Center di MSDN, che spiegherà step-by-step la realizzazione del componente in questione; questo ha il principale scopo di illustrare quali cose fantastiche...

posted @ mercoledì 4 giugno 2008 23:48 | Feedback (1) | Filed Under [ Visual Basic Visual Studio Tools for Office ]

CodePlex, MSDN Code Gallery e browser a localizzazione italiana

Non so se vi è mai capitato di pubblicare progetti open-source su CodePlex o sulla Code Gallery di MSDN, ma vi voglio parlare delle mie problematiche esperienze con questi due importanti siti, suggerendo una soluzione che ho trovato proprio oggi e che spero possa essere utile ad altre persone. In diverse occasioni ho pubblicato codice sia su CodePlex che sulla Code Gallery di MSDN, i due siti che Microsoft dedica ai progetti open-source. C’è un retroscena, però, poco piacevole. Ogni qual volta tentavo di creare una c.d. “release” e di inviare dei file, non accadeva un bel niente! Dopo diversi tentativi...

posted @ martedì 3 giugno 2008 23:30 | Feedback (7) | 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 ]

Add-in free per Visual Studio 2008 per rimuovere i progetti recenti

Visto che l'argomento interessa molti e dopo che il nostro Mario ci ha dato una dritta su quali sono le chiavi di registro per eliminare l'elenco dei progetti recenti in Visual Studio 2008, ho pensato di realizzare un add-in che fa proprio questo. Viene aggiunto un nuovo comando al menu Strumenti (Tools per l'inglese) che, al clic, elimina l'elenco in questione. Ovviamente, della pulizia vi renderete conto solo al riavvio dell'IDE. Ho pubblicato il progetto sulla Code Gallery di MSDN, dove troverete sia il codice sorgente, sia un pacchetto in formato .Vsi (realizzato col nostro Vsi Builder che non serve solo...

posted @ martedì 3 giugno 2008 18:55 | Feedback (6) | Filed Under [ Visual Basic C# Visual Studio 2008 Visual Studio Extensibility ]

Anteprime dei miei libri .NET su Google Libri

Spesso ricevo e-mail di persone che mi chiedono se nel mio primo/secondo libro si parla di questo o quell'argomento. Forse non tutti sanno che esiste un servizio di Google, chiamato Google Libri, in cui gli editori indicizzano anteprime limitate dei testi. Ci sono anche i miei due libri, così potete rendervi conto personalmente degli argomenti trattati, dello stile utilizzato, del target di utenza... eccetera eccetera! :-) Come ripeto si tratta di anteprime limitate, circa il 20/25% dell'intero testo ma credo sia un buon modo per farsi un'idea. Vi lascio i link, nel caso aveste la curiosità di guardare: Programmare con .NET Framework...

posted @ lunedì 2 giugno 2008 12:44 | 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 ]

Query personalizzate in LINQ-to-SQL

Se volete approfittare delle peculiarità dell'Object Relational Mapping di LINQ-to-SQL ma non volete rinunciare alle vostre abitudini nello scrivere query mediante istruzioni SQL, l'oggetto DataContext espone un comodo metodo chiamato ExecuteQuery. Supponiamo di avere un'applicazione connessa al database Northwind e che abbiamo già eseguito tutte le operazioni di mapping, con particolare riferimento alla tabella Orders, con successiva aggiunta dell'origine dati sotto forma di oggetto (vedere al riguardo questo mio articolo). Da codice, innanzitutto ottengo l'istanza del DataContext: Private dc As New NorthwindDataContext Quindi invio una serie di istruzioni SQL mediante il metodo ExecuteQuery, al fine di ottenere...

posted @ domenica 1 giugno 2008 14:06 | Feedback (0) | Filed Under [ Visual Basic LINQ ]

LINQ-to-SQL: ottenere la riga selezionata di una DataGridView

Per ottenere la riga selezionata di una DataGridView, in LINQ-to-SQL è necessario eseguire delle operazioni diverse rispetto all'utilizzo dei Dataset. E' possibile sfruttare, ad esempio, un'espressione lambda. Considerate il seguente snippet, che potremmo aggiungere come codice del gestore dell'evento CurrentChanged del controllo BindingSource associato alla DataGridView: 'Ottiene la riga corrente Dim ID As Integer = DirectCast(DataGridView1.SelectedRows(0).Cells("IDCliente").Value, Integer) Dim CurrentCustomer As Customers = NorthwindDataContext.Orders.First(Function(p) p.CustomerID = ID) Ipotizzando di avere l'applicazione connessa al database Northwind e di voler conoscere il valore della cella che contiene l'ID cliente contenuto nella riga selezionata, in primo luogo otteniamo il valore della cella...

posted @ domenica 1 giugno 2008 02:30 | Feedback (1) | Filed Under [ Visual Basic LINQ ]

Powered by:
Powered By Subtext Powered By ASP.NET