Метод обновления Dataadapter не работает при программном изменении значений в сетке данных - PullRequest
1 голос
/ 09 января 2020

У меня есть таблица Users (Id, Имя, Фамилия) в базе данных

Мое простое приложение:

datagridview привязывается к таблице Users и при изменении содержимое определенной ячейки и вызов метода Update моего dataadapter

Кнопка обновления:

//update changes to database
peopleTableAdapter.Update(databindTestDataSet.People);

это работает, оно отражает значения обратно в мою базу данных.

enter image description here

Теперь то, что я хочу сейчас сделать, - это сделать мое представление данных только

dgvUsers.ReadOnly = true;

и внести изменения через текстовое поле, которое программно изменит значение ячейки и затем отразит изменения обратно в базу данных, нажав кнопку обновления. ЭТО НЕ РАБОТАЕТ

enter image description here
Кнопка обновления:

//get selected row
DataGridViewRow currentRow = dgvUsers.CurrentRow;
//set the cell's value from textbox
currentRow.Cells[1].Value = txtFirstname.Text;
currentRow.Cells[2].Value = txtLastname.Text;
//update changes to database
peopleTableAdapter.Update(databindTestDataSet.People);

как мне сделать эту работу? я предполагаю, что ячейка должна потерять фокус, чтобы внести изменения

...