DataGridViewColumnCollection.Add メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
指定した列をコレクションに追加します。
オーバーロード
Add(DataGridViewColumn) |
指定した列をコレクションに追加します。 |
Add(String, String) |
指定した列名と列ヘッダー テキストを持つ DataGridViewTextBoxColumn をコレクションに追加します。 |
Add(DataGridViewColumn)
指定した列をコレクションに追加します。
public:
virtual int Add(System::Windows::Forms::DataGridViewColumn ^ dataGridViewColumn);
public virtual int Add (System.Windows.Forms.DataGridViewColumn dataGridViewColumn);
abstract member Add : System.Windows.Forms.DataGridViewColumn -> int
override this.Add : System.Windows.Forms.DataGridViewColumn -> int
Public Overridable Function Add (dataGridViewColumn As DataGridViewColumn) As Integer
パラメーター
- dataGridViewColumn
- DataGridViewColumn
追加する DataGridViewColumn。
戻り値
列のインデックス番号。
例外
dataGridViewColumn
が null
です。
関連付けられた DataGridView コントロールによって次のいずれかのアクションが実行されているため、一時的に新しい列が追加できない状態にあります。
コントロール内のすべてのセルを選択します。
選択範囲をクリアします。
列 DisplayIndex プロパティの値を更新しています。
- または -
このメソッドは、次のいずれかの DataGridView イベントのハンドラーから呼び出されています。
- または -
dataGridViewColumn
は既に DataGridView コントロールに属しています。
- または -
dataGridViewColumn
SortMode プロパティの値が Automatic で、なおかつ SelectionMode プロパティの値が FullColumnSelect または ColumnHeaderSelect です。 競合するプロパティ値を一時的に設定するには、コントロールの ISupportInitialize.BeginInit() メソッドと ISupportInitialize.EndInit() メソッドを使用します。
- または -
dataGridViewColumn
InheritedAutoSizeMode プロパティの値が ColumnHeader で、なおかつ ColumnHeadersVisible プロパティの値が false
です。
- または -
dataGridViewColumn
の InheritedAutoSizeMode プロパティの値が Fill で、なおかつ、Frozen プロパティの値が true
です。
- または -
dataGridViewColumn
の FillWeight プロパティに、コントロールに含まれるすべての列の FillWeight を合わせた値が 65535 を超えるような値が設定されています。
- または -
逆の DisplayIndex プロパティ値を持つ列と隣接してしまうような Frozen プロパティ値と Frozen プロパティ値が、dataGridViewColumn
に設定されています。
- または -
DataGridView コントロールに、少なくとも 1 つの行が存在し、なおかつ、dataGridViewColumn
の CellType プロパティの値が null
です。
例
次のコード例は、このメソッドの使用方法を示しています。
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
こちらもご覧ください
適用対象
Add(String, String)
指定した列名と列ヘッダー テキストを持つ DataGridViewTextBoxColumn をコレクションに追加します。
public:
virtual int Add(System::String ^ columnName, System::String ^ headerText);
public virtual int Add (string columnName, string headerText);
public virtual int Add (string? columnName, string? headerText);
abstract member Add : string * string -> int
override this.Add : string * string -> int
Public Overridable Function Add (columnName As String, headerText As String) As Integer
パラメーター
- columnName
- String
列を参照するために使用する名前。
- headerText
- String
列ヘッダーのテキスト。
戻り値
列のインデックス番号。
例外
関連付けられた DataGridView コントロールによって次のいずれかのアクションが実行されているため、一時的に新しい列が追加できない状態にあります。
コントロール内のすべてのセルを選択します。
選択範囲をクリアします。
列 DisplayIndex プロパティの値を更新しています。
- または -
このメソッドは、次のいずれかの DataGridView イベントのハンドラーから呼び出されています。
- または -
SelectionMode プロパティの値が FullColumnSelect または ColumnHeaderSelect であり、列の既定の SortMode プロパティ値である Automatic と競合しています。
- または -
列の既定の FillWeight プロパティ値 (100) が使用されたことによって、コントロールに含まれるすべての列の FillWeight を合わせた値が 65535 を超えました。
注釈
columnName
パラメーターと headerText
パラメーターはそれぞれ、 プロパティと HeaderText プロパティにName関連しています。
こちらもご覧ください
適用対象
.NET