DataGridViewColumnCollection.Add 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
将给定列添加到集合中。
重载
| 名称 | 说明 |
|---|---|
| Add(DataGridViewColumn) |
将给定列添加到集合中。 |
| Add(String, String) |
向集合中添加具有给定列名和列标题文本的 a 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 。
-或-
属性值dataGridViewColumnSortMode为和AutomaticSelectionMode属性值为FullColumnSelect或 ColumnHeaderSelect。 使用控件 ISupportInitialize.BeginInit() 和 ISupportInitialize.EndInit() 方法暂时设置冲突的属性值。
-或-
属性值 dataGridViewColumnInheritedAutoSizeMode 为 ColumnHeaderColumnHeadersVisible ,属性值为 false.
-或-
dataGridViewColumn
InheritedAutoSizeMode具有属性值的Fill属性值和Frozen属性值 。true
-或-
dataGridViewColumn 具有一个 FillWeight 属性值,会导致控件中所有列的组合 FillWeight 值超过 65535。
-或-
dataGridViewColumn has DisplayIndex 和 Frozen 属性值,用于在具有相反 Frozen 属性值的一组相邻列之间显示该值。
-或-
该DataGridView控件至少包含一行,其dataGridViewColumnCellType属性值为 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)
向集合中添加具有给定列名和列标题文本的 a 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参数分别与NameHeaderText属性相关。