共用方式為


Visual Basic 6.0 使用者可用的 ListView 控制項

更新:2007 年 11 月

Visual Basic 6.0 的 ListView 控制項在 Visual Basic 2008 中已經由 ListView 控制項取代。有些屬性、方法、事件及常數的名稱會改變,而且在某些情況下,行為方面也會有差異。

概念上的差異

DropHighlight 屬性

在 Visual Basic 6.0 中,當游標移過 ListView 控制項的 ListItem 物件之上時,就會使用 DropHighlight 屬性,以系統醒目提示色彩,反白顯示 ListItem 物件。這個屬性一般是用在拖放作業時。

在 Visual Basic 2008 中,DropHighlight 屬性已不存在;您可以透過在 MouseEnter 和 MouseLeave 事件中,以 Ownerdraw 模式繪製 (也稱為自訂繪製) 反白顯示而達到相同效果。如需詳細資訊,請參閱使用內建主控描繪支援的控制項

FlatScrollBar 屬性

在 Visual Basic 6.0 中,FlatScrollBar 屬性會決定捲軸在 ListView 控制項中是否有平面 (二維) 外觀。

在 Visual Basic 2008 中,FlatScrollBar 屬性已不存在,ListView 控制項中的捲軸永遠都會維持三維外觀。

HideColumnHeaders 屬性

在 Visual Basic 6.0 中,HideColumnHeaders 屬性決定 ListView 控制項中的 ColumnHeader 物件在 Report 檢視中是否隱藏。

在 Visual Basic 2008 中,HideColumnHeaders 屬性已不存在,您可以透過設定 HeaderStyle 屬性,控制資料行行首的可視性。

ItemClick 事件

Visual Basic 6.0 ListView 控制項同時具有 Click 和 ItemClick 事件。ItemClick 事件使用 ListItem 物件做為引數。

而 Visual Basic 2008 不再支援 ItemClick 事件。您可以改用 Click 事件和 EventSender.FocusedItem 引數,以判斷所按下的 ListViewItem。

排序

在 Visual Basic 6.0 中,是結合 Sorted、SortKey 和 SortOrder 屬性進行 ListView 控制項的排序作業:Sorted 會判斷是否已啟用排序,SortOrder 則判斷是按遞增還是遞減排序,然後 SortKey 指定要用來代替文字進行排序的子項目。

在 Visual Basic 2008 中,排序是使用 Sorting 屬性來完成,此屬性會啟用排序,然後只要一個步驟就能設定排列順序。SortKey 屬性已由 ListViewItemSorter 屬性取代。

View 屬性

在 Visual Basic 6.0 中,View 屬性決定 ListView 控制項中項目的顯示方式:顯示為大型圖示附上文字 (lvwIcon)、顯示為小型圖示附上文字 (lvwSmallIcon)、顯示為一份清單 (lvwList),或者顯示為附子項目的清單 (lvwReport)。

在 Visual Basic 2008 中仍然有 View 屬性,但列舉型別 (Enumeration) 不同。lvwIcon 是由 LargeIcon 取代,lvwSmallIcon 則由 SmallIcon 取代、lvwList 由 List 取代,而 lvwReport 則由 Details 取代。此外,也有新的檢視 (Tile),其中各個項目都是以完整圖示大小的外觀顯示,並在圖示右邊附上項目標籤和子項目資訊。

ListView 控制項的程式碼變更

下列範例顯示 Visual Basic 6.0 與 Visual Basic 2008 之間的程式撰寫技巧差異。

判斷 ListView 控制項中已選取項目的程式碼變更

下列程式碼範例會指定已選取的 ListView 項目給變數。

' Visual Basic 6.0
Dim theItem As ListItem
theItem = ListView1.SelectedItem
' Visual Basic
Dim theItem As ListViewItem
If ListView1.SelectedItems.Count > 0 Then
    theItem = ListView1.SelectedItems(0)
Else
    theItem = Nothing
End If

判斷 ListView 控制項中所有已選取項目的程式碼變更

下列程式碼範例會顯示訊息方塊,附上 ListView 控制項中各個已選取項目的文字。

' Visual Basic 6.0
For i = 1 To ListView1.ListItems.Count
    If ListView1.ListItems(i).Selected = True Then
        MsgBox(ListView1.SelectedItem
    End If
Next i
' Visual Basic
For Each selectedItem As ListViewItem In ListView1.SelectedItems
    MsgBox(selectedItem.Text)
Next

ListView 控制項屬性、方法和事件的對等用法

下表列出 Visual Basic 6.0 的屬性、方法和事件,以及其在 Visual Basic 2008 的對等用法。並未列出具有相同名稱和行為的屬性、方法和事件。除非另外註明,否則所有 Visual Basic 2008 列舉型別 (Enumeration) 都會對應到 System.Windows.Forms 命名空間 (Namespace)。

此表提供說明行為差異的主題連結。若 Visual Basic 2008 中沒有直接的對等用法,則提供連結至替代的主題。

屬性

Visual Basic 6.0

Visual Basic 2008 對等用法

Appearance

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的 Appearance 和 BorderStyle 屬性

Arrange

Alignment

BackColor

BackColor

注意事項:

在 Visual Basic 2008 中會以不同方式處理色彩。如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的色彩行為

ColumnHeaderIcons

ImageIndex, ImageKey

ColumnsHeaders

Columns

Container

Parent

DragIcon

DragMode

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的拖放動作

DropHighlight

新實作,

FlatScrollBar

新實作,

FontFont

FontBold

FontItalic

FontName

FontSize

FontStrikethrough

FontUnderline

Font

注意事項:

在 Visual Basic 2008 中會以不同方式處理字型。如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的字型物件

Height

Height, Size

注意事項:

在 Visual Basic 2008 中會以不同方式處理座標。如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的座標系統

HelpContextID

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的說明支援

HWnd

Handle

Icons

LargeImageList

Index

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的控制項陣列

Left

Left

注意事項:

在 Visual Basic 2008 中會以不同方式處理座標。如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的座標系統

ListItems

Items

MouseIcon

新實作,如需詳細資訊,請參閱無法設定自訂 MousePointer

MousePointer

Cursor

如需常數的清單,請參閱 Visual Basic 6.0 使用者可用的 MousePointer

OLEDragMode

OLEDropMode

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的拖放動作

Parent

FindForm 方法

Picture

BackgroundImage

PictureAlignment

BackgroundImageTiled

SelectedItem

SelectedItems

SmallIcons

SmallImageList

Sorted

SortOrder

Sorting

SortKey

ListViewItemSorter

TextBackground

BackColor

ToolTipText

ToolTip 元件。

如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的 ToolTip 支援

Top

Top

注意事項:

在 Visual Basic 2008 中會以不同方式處理座標。如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的座標系統

WhatsThisHelpID

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的說明支援

Width

Width, Size

注意事項:

在 Visual Basic 2008 中會以不同方式處理座標。如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的座標系統

方法

名稱

Visual Basic 2008 對等用法

Drag

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的拖放動作

FindItem

FindItemWithText

GetFirstVisible

TopItem

Move

SetBounds

注意事項:

在 Visual Basic 2008 中會以不同方式處理座標。如需詳細資訊,請參閱Visual Basic 6.0 使用者可用的座標系統

OLEDrag

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的拖放動作

Refresh

RedrawItems

SetFocus

Focus

ShowWhatsThis

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的說明支援

StartLabelEdit

BeginEdit

ZOrder

BringToFrontSendToBack 方法

事件

Visual Basic 6.0

Visual Basic 2008 對等用法

DblClick

DoubleClick

DragDrop

DragOver

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的拖放動作

GotFocus

Enter

ItemClick

沒有直接的對等用法。

LostFocus

Leave

OLECompleteDrag

OLEDragDrop

OLEDragOver

OLEGiveFeedback

OLESetData

OLEStartDrag

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的拖放動作

Validate

Validating

升級注意事項

當 Visual Basic 6.0 專案升級為 Visual Basic 2008 時,ListView 控制項會升級為 Windows Form ListView 控制項。當屬性、方法和事件沒有對應項或它們的行為上有差異時,會在您的程式碼中加入升級說明或警告。

請參閱

其他資源

ListView 控制項 (Windows Form)