DataGridView控件中的各種事件都無法直接響應Cell中內容的變化,包括KeyPress等事件,可以采用下面方法
private void dataGridViewBarcode_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
{
if (e.Control.GetType().Equals(typeof(DataGridViewTextBoxEditingControl)))
{
e.CellStyle.BackColor = Color.FromName("window");
DataGridViewTextBoxEditingControl textControl = e.Control as DataGridViewTextBoxEditingControl;
textControl.TextChanged += new EventHandler(textControl_TextChanged);
}
}
private void textControl_TextChanged(object sender, EventArgs e)
{
this.label1.Text = ((TextBox)sender).Text;
}
注:此方法無法響應Cell中的回車鍵
