Win窗体DataGridView动态添加按钮列

Zom*_*man 1 c# datagridview winforms

我想在填充 DataGridView 后动态添加一个按钮列。添加按钮列后可见,但是当我尝试循环遍历 DataGridView 行时,每个单元格中的按钮均为空。

var buttonCol = new DataGridViewButtonColumn();
buttonCol.Name = "ButtonColumnName";
buttonCol.HeaderText = "Header";
buttonCol.Text = "Button Text";

dataGridView.Columns.Add(buttonCol);

foreach (DataGridViewRow row in dataGridView.Rows)
{
    var button = (Button)row.Cells["ButtonColumnName"].Value;
    // button is null here!
}
Run Code Online (Sandbox Code Playgroud)

小智 6

用这个:

foreach (DataGridViewRow row in dataGridView.Rows) 
{ 
    // DataGridViewButtonCell button = (row.Cells["ButtonColumnName"] as DataGridViewButtonCell); 
    row.Cells["ButtonColumnName"].Value = "ButtonText";
} 
Run Code Online (Sandbox Code Playgroud)