VB.NET
Sviluppo Applicazioni Desktop
Corrado Cavalli
Microsoft .NET MVP
[email protected]
Applicazioni Windows Form



E’ un applicazione che ha almeno un Form
Form
E’ una classe presente in System.Windows.Forms
Application
Application.Run
Application.DoEvents
Application.StartupPath
Application.Idle
Application.ThreadException

I Forms sono classi, e come tali vanno utilizzati

Ereditarietà visuale
Un form può ereditare da un form preesistente
Forms Properties

AutoScroll
MaximumSize, MinimumSize
Opacity
TransparencyKey,Region
AcceptButton,CancelButton
Show,ShowDialog,DialogResult
TopMost,CenterParent,CenterScreen
Application.EnableVisualStyles

I control arrays non esistono più...







Forms MDI




Form.IsMDIContainer=True
Form.MdiParent=Me
Form.ActiveMDIChild
Form.MDIActivate
Menu

Form.MenuStart/MenuComplete
Menu.Select
Menu.OwnerDraw

ContextMenu


Clipboard

E’ una classe con metodi statici Clipboard.xxx
Clipboard.SetData(oggetto)
IDataObject=ClipBoard.GetDataObject
IDataObject.GetDataPresent(format)
Enumerato
DataFormats
Object=ClipBoard.GetData()
Va castato con DirectCast()
Posso copiare oggetti se la classe è marcata con <Serializable>
Drag and Drop

E’ un operazione Sincrona
Dim eff as DragDropEffects=Controllo.DoDragDrop(Dati,DragDropEffects)
Evento DragEnter (AllowDrop=True)
IDataObject=e.GetDataObject
Present=IDataObject.GetDataPresent(format)
If present then e.Effect=DragDropEffects.XXX
Evento DragDrop
Object=e.Data.GetData(DataFormat.XXX)
Va castato con DirectCast()
If eff=DataFormats.XXX then
...
End If
Enumerato
DataFormats
Proprietà dinamiche e Settings







I controlli supportano proprietà dinamiche
Vengono memorizzate nel file .config
Possiamo inserire i nostri settings
System.Configuration.AppSettingsReader
No AppSettingsWriter... 
Application.UserAppDataPath
Application.CommonAppDataPath
Risorse e Localizzazione





Sono informazioni che inseriamo nella
nostra assembly
Si possono leggere usando
Assembly.GetManifestResourceStream
Form.Localizable=True
Form.Language=...
WinRes.exe
Al.exe
DataBinding



Associare un controllo ad una (o più) fonti di
informazioni (DataSource)
Simple Binding (tutti i controlli,
legame Proprietà <> Informazione, un solo item
visualizzato)
Complex Binding (alcuni controlli, tutti gli items
visualizzati)
Esempio di Simple Binding...
Dim bnd as new Binding(“Text”,DataSource,DataMember)
TextBox1.DataBindings.Add(bnd)
DataBinding
Text
DataBindings
BindingManager
PropertyManager (1)
CurrencyManager (n)
Fonte Dati
Position
Current

BindingManager gestisce il legame Controlli <-> Fonte Dati
PropertyManager (Single item DataSource)
CurrencyManager (List data source )

Entrambi ereditano dalla classe astratta BindingManagerBase






Position: Posizione attuale nella lista di dati
Current: Attuale DataRowItem selezionato
Esiste un BindingManager per ogni Fonte Dati interessata a binding
I BindingManagers sono accessibili attraverso la proprietà
BindingContext del Form
Communities


news.microsoft.com
microsoft.public.it.dotnet.vb
microsoft.public.it.dotnet.*
Comunità degli sviluppatori
http://www.microsoft.com/italy/msdn/community/default.asp
Webcasts
http://www.microsoft.com/italy/msdn/webcast/default.asp
Scarica

VB.NET Sviluppo Applicazioni Desktop Corrado Cavalli Microsoft