2009-09-11 31 views

回答

3

之前绑定到数据源集:

grd.AutoGenerateColumns = false; 

自己创建的所有DataGridView列,并将其绑定到数据源:

DataGridViewTextBoxColumn dgvc = new DataGridViewTextBoxColumn(); 
dgvc.HeaderText = "column_header"; 
dgvc.DataPropertyName = "column_name"; 

创建DataGridViewButtonColumn。

DataGridViewButtonColumn dgvbt = new DataGridViewButtonColumn();    

如果你想此列不绑定,设置标题文本上的所有按钮相同的文字:

dgvbt.HeaderText = "OK?"; 
dgvbt.Text = "ok";      // works also when bound 
dgvbt.UseColumnTextForButtonValue = true; // 

如果你希望你的列也有界,并且每个按键有潜在的文本细胞,将其绑定:

dgvbt.DataPropertyName = "column_bt"; 

添加创建的列到DataGridView:

grd.Columns.Add(dgvc); 
grd.Columns.Add(dgvbt); 

处理的DataGridView的CellClick事件:

grd.CellClick += new DataGridViewCellEventHandler(grd_CellClick); 


void grd_CellClick(object sender, DataGridViewCellEventArgs e) 
{ 
    if (e.RowIndex >= 0 && e.ColumnIndex == index_of_button_column) 
    { 
     MessageBox.Show(this, e.RowIndex.ToString() + " Clicked!"); 
     //... 
    } 
} 

更多,请参阅:

http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridviewbuttoncolumn.aspx

相关问题