Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Aggiornamento: novembre 2007
In Visual Basic 2008, il controllo ListBox di Visual Basic 6.0 viene sostituito dal controllo ListBox o dal controllo CheckedListBox. I nomi di alcuni metodi, eventi, proprietà e costanti sono differenti e in certi casi esistono anche delle differenze di comportamento.
Differenze concettuali
ListBox con casella di controllo
In Visual Basic 6.0 mediante la proprietà Style di un controllo ListBox si determina la possibilità di visualizzare una casella di controllo accanto a ciascun elemento di testo. Anche se la proprietà MultiSelect è impostata su False, è possibile selezionare più elementi nel controllo ListBox selezionando la casella di controllo accanto a essi. Non esiste un modo per determinare a livello di codice se un elemento è stato selezionato o deselezionato; per implementare questa funzionalità è necessario utilizzare un controllo ListView.
In Visual Basic 2008 mediante il nuovo controllo CheckedListBox è possibile visualizzare le caselle di controllo accanto a ogni elemento; non è più possibile visualizzare le caselle di controllo nel controllo ListBox. Il controllo CheckedListBox consente di stabilire a livello di codice mediante un insieme CheckedListBox.CheckedItemCollection se un elemento è stato selezionato o deselezionato.
Proprietà Columns
In Visual Basic 6.0 la proprietà Columns accettava un intero in cui si specificava il numero di colonne da visualizzare.
In Visual Basic 2008, invece, la proprietà MultiColumn accetta un valore booleano e la proprietà ColumnWidth accetta un intero in cui si specifica la larghezza in pixel. Se la larghezza del controllo ListBox viene modificata in fase di esecuzione, potrebbe essere necessario inoltre impostare la proprietà ColumnWidth per ciascuna colonna.
Evento ItemCheck
In Visual Basic 6.0 il controllo ListBox era tale che quando si generava un evento ItemCheck lo stato di attivazione era già cambiato.
In Visual Basic 2008, invece, il controllo CheckedListBox è tale che quando si genera l'evento ItemCheck lo stato di attivazione non è ancora cambiato. È possibile ottenere il valore in sospeso dell'argomento ItemCheckEventArgs passato all'evento.
Modifiche del codice per il controllo ListBox
Nell'esempio riportato di seguito vengono illustrate le differenze nelle tecniche di codifica tra Visual Basic 6.0 e Visual Basic 2008.
Modifiche del codice per aggiungere e rimuovere elementi in un controllo ListBox
Nell'esempio di codice riportato di seguito viene mostrato come aggiungere e rimuovere gli elementi del controllo ListBox.
' Visual Basic 6.0
' Add an item at the end of the list.
List1.AddItem "Tokyo"
' Insert an item at the top of the list.
List1.AddItem "Copenhagen", 0
' Remove the first item.
List1.RemoveItem 0
'Visual Basic
' Add an item at the end of the list.
ListBox1.Items.Add("Tokyo")
' Insert an item at the top of the list.
ListBox1.Items.Insert(0, "Copenhagen")
' Remove the first item.
ListBox1.Items.RemoveAt(0)
Modifiche del codice per accedere a elementi specifici di un controllo ListBox
Nell'esempio di codice riportato di seguito viene mostrato come ottenere il valore di un elemento di un controllo ListBox.
' Visual Basic 6.0
Private Function GetItemText(i As Integer) As String
' Return the text of the item using the index:
GetItemText = ListBox1.List(i)
End Function
' Visual Basic
Private Function GetItemText(ByVal i As Integer) As String
' Return the text of the item using the index:
GetItemText = CStr(ListBox1.Items(i))
End Function
Modifiche del codice per rilevare gli elementi selezionati in un controllo CheckedListBox
Nell'esempio di codice riportato di seguito viene illustrato come determinare se gli elementi di un controllo CheckedListBox sono selezionati o deselezionati.
' Visual Basic 6.0
' The Visual Basic 6.0 ListBox control didn't support this scenario,
' a ListView control had to be used instead.
Dim s As String
Dim i As Integer
' Loop through all items
For i = 1 To ListView1.ListItems.Count
' If an item is checked, add it to the string
If ListView1.ListItems(i).Checked = True Then
s = s & "Checked Item" & CStr(i) & " = " & _
ListView1.ListItems(i) & vbCrLf
End If
Next
' Determine if any items are checked.
If s <> "" Then
MsgBox s
End If
' Visual Basic
' Determine if there are any items checked.
If CheckedListBox1.CheckedItems.Count <> 0 Then
' If so, loop through all checked items and print results.
Dim x As Integer
Dim s As String = ""
For x = 0 To CheckedListBox1.CheckedItems.Count - 1
s = s & "Checked Item " & CStr(x + 1) & " = " & _
CStr(CheckedListBox1.CheckedItems(x)) & ControlChars.CrLf
Next x
MessageBox.Show(s)
End If
Proprietà, metodi ed eventi equivalenti del controllo ListBox
Nelle tabelle riportate di seguito sono elencati le proprietà, i metodi e gli eventi di Visual Basic 6.0, insieme ai rispettivi equivalenti di Visual Basic 2008. Non sono riportati nell'elenco le proprietà, i metodi e gli eventi aventi stesso nome e comportamento. Le costanti sono visualizzate, ove applicabile, sotto la proprietà o il metodo. Se non diversamente specificato, tutte le enumerazioni Visual Basic 2008 sono mappate allo spazio dei nomi System.Windows.Forms.
In questa tabella vengono forniti collegamenti ad argomenti in cui sono illustrate le differenze di comportamento. Quando non è presente un equivalente diretto in Visual Basic 2008, vengono forniti collegamenti ad argomenti in cui sono illustrate le alternative disponibili.
Proprietà
Visual Basic 6.0 |
Visual Basic 2008Equivalente |
||
|---|---|---|---|
Appearance |
Nuova implementazione. Per ulteriori informazioni, vedere Proprietà Appearance e BorderStyle per gli utenti di Visual Basic 6.0. |
||
BackColor |
|
||
Columns |
|||
Container |
|||
DataChanged DataField DataFormat DataMember DataSource |
Nuova implementazione. Per ulteriori informazioni, vedere Accesso ai dati per gli utenti di Visual Basic 6.0. |
||
DragIcon DragMode |
Nuova implementazione. Per ulteriori informazioni, vedere Trascinamento della selezione per gli utenti di Visual Basic 6.0. |
||
FontFont FontBold FontItalic FontName FontSize FontStrikethrough FontUnderline |
|
||
ForeColor |
|
||
Height |
|
||
HelpContextID |
Nuova implementazione. Per ulteriori informazioni, vedere Supporto della Guida per gli utenti di Visual Basic 6.0. |
||
HWnd |
|||
Index |
Nuova implementazione. Per ulteriori informazioni, vedere Matrici di controlli per gli utenti di Visual Basic 6.0. |
||
IntegralHeight |
|||
ItemData |
Nuova implementazione. Per ulteriori informazioni, vedere Impossibile aggiornare la proprietà ItemData. |
||
Left |
|
||
List |
|||
ListCount |
Count (List.Count) |
||
ListIndex |
|||
MouseIcon |
Nuova implementazione. Per ulteriori informazioni, vedere Impossibile impostare un MousePointer personalizzato. |
||
MousePointer |
Per un elenco di costanti, vedere MousePointer per gli utenti di Visual Basic 6.0. |
||
MultiSelect |
|||
NewIndex |
Nuova implementazione. Per ulteriori informazioni, vedere Impossibile aggiornare la proprietà NewIndex. |
||
OLEDragMode OLEDropMode |
Nuova implementazione. Per ulteriori informazioni, vedere Trascinamento della selezione per gli utenti di Visual Basic 6.0. |
||
Parent |
Metodo FindForm |
||
SelCount |
Count (SelectedItem.Count) |
||
Selected |
GetSelected, SetSelected (controllo ListBox) GetItemChecked, SetItemChecked (controllo CheckedListBox) |
||
Style |
Proprietà di nuova implementazione. Viene eseguito il mapping di 0 – Standard al controllo CheckedListBox e di 1 – Checkbox al controllo CheckedListBox. |
||
ToolTipText |
Componente ToolTip Per ulteriori informazioni, vedere Supporto di ToolTip per gli utenti di Visual Basic 6.0. |
||
Top |
|
||
WhatsThisHelpID |
Nuova implementazione. Per ulteriori informazioni, vedere Supporto della Guida per gli utenti di Visual Basic 6.0. |
||
Width |
|
Metodi
Name |
Visual Basic 2008Equivalente |
||
|---|---|---|---|
AddItem |
|||
Clear |
|||
Drag |
Nuova implementazione. Per ulteriori informazioni, vedere Trascinamento della selezione per gli utenti di Visual Basic 6.0. |
||
Move |
|
||
OLEDrag |
Nuova implementazione. Per ulteriori informazioni, vedere Trascinamento della selezione per gli utenti di Visual Basic 6.0. |
||
RemoveItem |
|||
SetFocus |
|||
ShowWhatsThis |
Nuova implementazione. Per ulteriori informazioni, vedere Supporto della Guida per gli utenti di Visual Basic 6.0. |
||
ZOrder |
Metodo BringToFront o SendToBack |
Eventi
Visual Basic 6.0 |
Visual Basic 2008Equivalente |
|---|---|
DblClick |
|
DragDrop DragOver |
Nuova implementazione. Per ulteriori informazioni, vedere Trascinamento della selezione per gli utenti di Visual Basic 6.0. |
GotFocus |
|
ItemCheck |
ItemCheck (solo CheckedListBox) |
LostFocus |
|
OLECompleteDrag OLEDragDrop OLEDragOver OLEGiveFeedback OLESetData OLEStartDrag |
Nuova implementazione. Per ulteriori informazioni, vedere Trascinamento della selezione per gli utenti di Visual Basic 6.0. |
Scroll |
Nuova implementazione. Per ulteriori informazioni, vedere Proprietà TopIndex ed evento Scroll per gli utenti di Visual Basic 6.0. |
Validate |
Note sull'aggiornamento
Durante l'aggiornamento, se la proprietà Style di un controllo Listbox di Visual Basic 6.0 è impostata su 1 – Checkbox, il controllo verrà aggiornato al controllo CheckedListBox; in caso contrario, verrà aggiornato al controllo ListBox.
Vedere anche
Riferimenti
Cenni preliminari sul controllo ListBox (Windows Form)
Cenni preliminari sul controllo ListBox (Windows Form)
Cenni preliminari sul controllo CheckedListBox (Windows Form)
Nota: