次の方法で共有


DataGridViewColumnCollection.Insert(Int32, DataGridViewColumn) メソッド

定義

コレクション内の指定したインデックスに列を挿入します。

public:
 virtual void Insert(int columnIndex, System::Windows::Forms::DataGridViewColumn ^ dataGridViewColumn);
public virtual void Insert (int columnIndex, System.Windows.Forms.DataGridViewColumn dataGridViewColumn);
abstract member Insert : int * System.Windows.Forms.DataGridViewColumn -> unit
override this.Insert : int * System.Windows.Forms.DataGridViewColumn -> unit
Public Overridable Sub Insert (columnIndex As Integer, dataGridViewColumn As DataGridViewColumn)

パラメーター

columnIndex
Int32

指定した列を挿入する位置を示す 0 から始まるインデックス。

dataGridViewColumn
DataGridViewColumn

挿入する DataGridViewColumn

例外

dataGridViewColumnnullです。

関連付けられた DataGridView コントロールによって次のいずれかのアクションが実行されているため、一時的に新しい列が追加できない状態にあります。

  • コントロール内のすべてのセルを選択します。

  • 選択範囲をクリアします。

  • DisplayIndex のプロパティ値を更新しています。

- または -

このメソッドは、次のいずれかの DataGridView イベントのハンドラーから呼び出されています。

- または -

dataGridViewColumn は既に DataGridView コントロールに属しています。

- または -

dataGridViewColumn SortMode プロパティの値が Automatic で、なおかつ SelectionMode プロパティの値が FullColumnSelect または ColumnHeaderSelect です。 競合するプロパティ値を一時的に設定するには、コントロールの ISupportInitialize.BeginInit() メソッドと ISupportInitialize.EndInit() メソッドを使用します。

- または -

dataGridViewColumn InheritedAutoSizeMode プロパティの値が ColumnHeader で、なおかつ ColumnHeadersVisible プロパティの値が false です。

- または -

dataGridViewColumnInheritedAutoSizeMode プロパティの値が Fill で、なおかつ、Frozen プロパティの値が true です。

- または -

逆の DisplayIndex プロパティ値を持つ列と隣接してしまうような Frozen プロパティ値と Frozen プロパティ値が、dataGridViewColumn に設定されています。

- または -

DataGridView コントロールに、少なくとも 1 つの行が存在し、なおかつ、dataGridViewColumnCellType プロパティの値が null です。

次のコード例は、このメソッドの使用方法を示しています。 詳細については、「方法: Data-Bound Windows フォーム DataGridView コントロールにバインドされていない列を追加する」を参照してください。

private void CreateUnboundButtonColumn()
{
    // Initialize the button column.
    DataGridViewButtonColumn buttonColumn =
        new DataGridViewButtonColumn();
    buttonColumn.Name = "Details";
    buttonColumn.HeaderText = "Details";
    buttonColumn.Text = "View Details";

    // Use the Text property for the button text for all cells rather
    // than using each cell's value as the text for its own button.
    buttonColumn.UseColumnTextForButtonValue = true;

    // Add the button column to the control.
    dataGridView1.Columns.Insert(0, buttonColumn);
}
Private Sub CreateUnboundButtonColumn()

    ' Initialize the button column.
    Dim buttonColumn As New DataGridViewButtonColumn

    With buttonColumn
        .HeaderText = "Details"
        .Name = "Details"
        .Text = "View Details"

        ' Use the Text property for the button text for all cells rather
        ' than using each cell's value as the text for its own button.
        .UseColumnTextForButtonValue = True
    End With

    ' Add the button column to the control.
    dataGridView1.Columns.Insert(0, buttonColumn)

End Sub

適用対象

こちらもご覧ください