DataGridViewColumnCollection 類別

定義

代表 DataGridView 控制項中 DataGridViewColumn 物件的集合。

public ref class DataGridViewColumnCollection : System::Windows::Forms::BaseCollection, System::Collections::IList
[System.ComponentModel.ListBindable(false)]
public class DataGridViewColumnCollection : System.Windows.Forms.BaseCollection, System.Collections.IList
[<System.ComponentModel.ListBindable(false)>]
type DataGridViewColumnCollection = class
    inherit BaseCollection
    interface IList
    interface ICollection
    interface IEnumerable
Public Class DataGridViewColumnCollection
Inherits BaseCollection
Implements IList
繼承
DataGridViewColumnCollection
屬性
實作

範例

下列程式碼範例說明此類型的用法。

private DataGridView dataGridView1 = new DataGridView();

private void AddColorColumn()
{
    DataGridViewComboBoxColumn comboBoxColumn =
        new DataGridViewComboBoxColumn();
    comboBoxColumn.Items.AddRange(
        Color.Red, Color.Yellow, Color.Green, Color.Blue);
    comboBoxColumn.ValueType = typeof(Color);
    dataGridView1.Columns.Add(comboBoxColumn);
    dataGridView1.EditingControlShowing +=
        new DataGridViewEditingControlShowingEventHandler(
        dataGridView1_EditingControlShowing);
}

private void dataGridView1_EditingControlShowing(object sender,
    DataGridViewEditingControlShowingEventArgs e)
{
    ComboBox combo = e.Control as ComboBox;
    if (combo != null)
    {
        // Remove an existing event-handler, if present, to avoid 
        // adding multiple handlers when the editing control is reused.
        combo.SelectedIndexChanged -=
            new EventHandler(ComboBox_SelectedIndexChanged);

        // Add the event handler. 
        combo.SelectedIndexChanged +=
            new EventHandler(ComboBox_SelectedIndexChanged);
    }
}

private void ComboBox_SelectedIndexChanged(object sender, EventArgs e)
{
    ((ComboBox)sender).BackColor = (Color)((ComboBox)sender).SelectedItem;
}
Private WithEvents dataGridView1 As New DataGridView()

Private Sub AddColorColumn()

    Dim comboBoxColumn As New DataGridViewComboBoxColumn()
    comboBoxColumn.Items.AddRange( _
        Color.Red, Color.Yellow, Color.Green, Color.Blue)
    comboBoxColumn.ValueType = GetType(Color)
    dataGridView1.Columns.Add(comboBoxColumn)

End Sub

Private Sub dataGridView1_EditingControlShowing(ByVal sender As Object, _
    ByVal e As DataGridViewEditingControlShowingEventArgs) _
    Handles dataGridView1.EditingControlShowing

    Dim combo As ComboBox = CType(e.Control, ComboBox)
    If (combo IsNot Nothing) Then

        ' Remove an existing event-handler, if present, to avoid 
        ' adding multiple handlers when the editing control is reused.
        RemoveHandler combo.SelectedIndexChanged, _
            New EventHandler(AddressOf ComboBox_SelectedIndexChanged)

        ' Add the event handler. 
        AddHandler combo.SelectedIndexChanged, _
            New EventHandler(AddressOf ComboBox_SelectedIndexChanged)

    End If

End Sub

Private Sub ComboBox_SelectedIndexChanged( _
    ByVal sender As Object, ByVal e As EventArgs)

    Dim comboBox1 As ComboBox = CType(sender, ComboBox)
    comboBox1.BackColor = _
        CType(CType(sender, ComboBox).SelectedItem, Color)

End Sub

備註

您可以透過 Columns 控制項的 屬性擷取這個類別的 DataGridView 實例。 集合會透過 屬性維護控制項的 DataGridView 參考。

建構函式

DataGridViewColumnCollection(DataGridView)

為指定的 DataGridViewColumnCollection,初始化 DataGridView 類別的新執行個體。

屬性

Count

取得集合中的元素總數。

(繼承來源 BaseCollection)
DataGridView

在集合執行資料行相關作業時取得 DataGridView

IsReadOnly

取得值,表示集合是否為唯讀。

(繼承來源 BaseCollection)
IsSynchronized

取得值,表示對 ICollection 的存取是否同步化。

(繼承來源 BaseCollection)
Item[Int32]

在集合中的指定索引處取得或設定資料行。

Item[String]

在集合中取得或設定指定名稱的資料行。

List

取得包含於 BaseCollection 執行個體中的項目清單。

SyncRoot

取得可用以同步存取 BaseCollection 的物件。

(繼承來源 BaseCollection)

方法

Add(DataGridViewColumn)

將指定的資料行加入至集合。

Add(String, String)

將具有指定資料行名稱和資料行行首文字的 DataGridViewTextBoxColumn 加入集合。

AddRange(DataGridViewColumn[])

將某個範圍的資料行加入至集合。

Clear()

清除集合。

Contains(DataGridViewColumn)

判斷集合是否包含指定的資料行。

Contains(String)

判斷集合是否包含指定名稱所參考的資料行。

CopyTo(Array, Int32)

將目前一維 Array 的所有元素複製到指定的一維 Array (從指定的目的 Array 索引開始)。

(繼承來源 BaseCollection)
CopyTo(DataGridViewColumn[], Int32)

將項目從集合中複製至指定的陣列。

CreateObjRef(Type)

建立包含所有相關資訊的物件,這些資訊是產生用來與遠端物件通訊的所需 Proxy。

(繼承來源 MarshalByRefObject)
Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
GetColumnCount(DataGridViewElementStates)

傳回符合指定之篩選條件需求的資料行數。

GetColumnsWidth(DataGridViewElementStates)

傳回要顯示所有符合指定之篩選條件需求的資料行所需的寬度 (以像素為單位)。

GetEnumerator()

取得允許逐一查看集合之成員的物件。

(繼承來源 BaseCollection)
GetFirstColumn(DataGridViewElementStates)

傳回顯示順序中第一個符合所指定包含篩選條件需求的資料行。

GetFirstColumn(DataGridViewElementStates, DataGridViewElementStates)

傳回顯示順序中第一個符合所指定包含篩選條件需求和排除篩選條件需求的資料行。

GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetLastColumn(DataGridViewElementStates, DataGridViewElementStates)

傳回顯示順序中最後一個符合所指定篩選條件需求的資料行。

GetLifetimeService()
已淘汰.

擷取控制這個執行個體存留期 (Lifetime) 原則的目前存留期服務物件。

(繼承來源 MarshalByRefObject)
GetNextColumn(DataGridViewColumn, DataGridViewElementStates, DataGridViewElementStates)

取得位在顯示順序中指定資料行後面且符合所指定篩選條件需求的第一個資料行。

GetPreviousColumn(DataGridViewColumn, DataGridViewElementStates, DataGridViewElementStates)

取得位在顯示順序中指定資料行前面且符合所指定篩選條件需求的最後一個資料行。

GetType()

取得目前執行個體的 Type

(繼承來源 Object)
IndexOf(DataGridViewColumn)

取得集合中指定 DataGridViewColumn 的索引。

InitializeLifetimeService()
已淘汰.

取得存留期服務物件,以控制這個執行個體的存留期原則。

(繼承來源 MarshalByRefObject)
Insert(Int32, DataGridViewColumn)

在集合中的指定索引處插入資料行。

MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
MemberwiseClone(Boolean)

建立目前 MarshalByRefObject 物件的淺層複本。

(繼承來源 MarshalByRefObject)
OnCollectionChanged(CollectionChangeEventArgs)

引發 CollectionChanged 事件。

Remove(DataGridViewColumn)

從集合中移除指定的資料行。

Remove(String)

從集合移除具有指定名稱的資料行。

RemoveAt(Int32)

從集合中移除指定索引處的資料行。

ToString()

傳回代表目前物件的字串。

(繼承來源 Object)

事件

CollectionChanged

當集合變更時發生。

明確介面實作

ICollection.CopyTo(Array, Int32)

將集合的整個內容複製到相容的一維 Array (從目標陣列的指定索引處開始)。

ICollection.Count

取得集合中的項目數。

ICollection.IsSynchronized

取得值,指出是否同步存取集合。

ICollection.SyncRoot

取得物件,這個物件可以用來對集合進行同步存取。

IEnumerable.GetEnumerator()

傳回逐一查看集合的列舉值。

IList.Add(Object)

將物件加入至集合結尾。

IList.Clear()

從集合中移除所有元素。

IList.Contains(Object)

判斷物件是否在集合中。

IList.IndexOf(Object)

決定集合中指定項目的索引。

IList.Insert(Int32, Object)

將元素插入集合中指定的索引處。

IList.IsFixedSize

取得值,這個值表示集合的大小是否是固定的。

IList.IsReadOnly

取得值,表示集合是否為唯讀。

IList.Item[Int32]

在指定的索引位置上取得或設定項目。

IList.Remove(Object)

從集合中移除指定物件的第一個符合項目。

IList.RemoveAt(Int32)

移除集合中具有指定索引的項目。

擴充方法

Cast<TResult>(IEnumerable)

IEnumerable 的項目轉換成指定的型別。

OfType<TResult>(IEnumerable)

根據指定的型別來篩選 IEnumerable 的項目。

AsParallel(IEnumerable)

啟用查詢的平行化作業。

AsQueryable(IEnumerable)

IEnumerable 轉換成 IQueryable

適用於

另請參閱