Я полагаю, что это ответ на ваш вопрос: Изменение значения ячейки таблицы данных в режиме редактирования
Я перекодировал идею из ссылки выше в ваш случай и проверил ее. Я создал событие _KeyUp в элементе управления редактирования. Вы должны добавить больше материала, например, тестирование, если для элемента управления редактирования выбран тип TextBox.
C #
private TextBox CtrlTextbox;
private void DataGridView2_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
{
if (RowIdx >= 0)
{
CtrlTextbox = (TextBox)e.Control;
CtrlTextbox.KeyUp += CopyText;
}
}
private void CopyText(object sender, KeyEventArgs e)
{
this.TextBox1.Text = sender.Text;
}
VB.NET
Dim CtrlTextbox As TextBox
Private Sub DataGridView2_EditingControlShowing(sender As Object, e As DataGridViewEditingControlShowingEventArgs) Handles DataGridView2.EditingControlShowing
If RowIdx >= 0 Then
CtrlTextbox = CType(e.Control, TextBox)
AddHandler CtrlTextbox.KeyUp, AddressOf CopyText
End If
End Sub
Private Sub CopyText(sender As Object, e As KeyEventArgs)
Me.TextBox1.Text = sender.Text
End Sub
EDIT:
Да, и есть еще один прекрасный способ добиться этого - привязка . См. Эту статью: Подробное руководство по привязке данных
Если вы посмотрите на главу Что еще можно сделать с привязкой данных? , вы увидите именно ваш случай.