我希望在我的DataGridView中设置我的一个列,这样当用户编辑此列中的单元格时,会出现一个DateTime Picker。我从this MSDN帖子中复制了所需的类。当我使用数据填充DataGridView时,我使用以下代码:
MySqlDataAdapter daClients = new MySqlDataAdapter(sql, cnManageMembers);
daClients.Fill(dtClients);
BindingSource bsClients = new BindingSource();
bsClients.DataSource = dtClients;
dgvClients.DataSource = bsClients;
bnClients.BindingSource = bsClients;
这种填充方法使用BindingSource来填充DataGridView,并自动处理添加所需列和单元格之类的事情,但是我需要更改其中一个列编辑单元格的方式。我可以实现哪些代码我不必手动添加每个Cell和它的值。所以不是这个(取自MSDN帖子):
DataTable dtClients = new DataTable();
CalendarColumn col = new CalendarColumn();
this.dataGridView1.Columns.Add(col);
this.dataGridView1.RowCount = 5;
foreach (DataGridViewRow row in this.dataGridView1.Rows)
{
row.Cells[0].Value = DateTime.Now;
}
有没有办法替换BindingSource添加的自定义日历单元格的默认单元格(也许在DrawCell EventHandler中?)。