У меня есть форма с несколькими текстовыми полями и таблицей данных, таблица данных привязана к текстовым полям, и я обрабатываю событие RowChanged таблицы данных.
Однако событие RowChanged вызывается только дважды, когда загружается форма ( существует более двух текстовых полей ), данные из таблицы данных загружаются в текстовые поля, но когда я изменяю текст в текстовых полях событие не инициируется. Тем не менее, отображение данных непосредственно из таблицы данных показывает, что данные были обновлены.
Код:
private Clients.DataSetClients.ClientsDataTable dtClients = new DataSetClients.ClientsDataTable();
private Clients.DataSetClientsTableAdapters.ClientsTableAdapter taClients = new DataSetClientsTableAdapters.ClientsTableAdapter();
private void ClientsEdit_Load(object sender, EventArgs e)
{
dtClients.RowChanged += new DataRowChangeEventHandler(dtClients_RowChanged);
taClients.FillByID(dtClients, ClientID);
textForename.DataBindings.Add("Text", dtClients, "Forename", true, DataSourceUpdateMode.OnPropertyChanged);
//.......
// etc
//.......
textEmail.DataBindings.Add("Text", dtClients, "Email", true, DataSourceUpdateMode.OnPropertyChanged);
}
void dtClients_RowChanged(object sender, DataRowChangeEventArgs e)
{
MessageBox.Show("dtClients_RowChanged");
}
private void simpleButton1_Click(object sender, EventArgs e)
{
MessageBox.Show(dtClients.Rows[0]["Email"].ToString());
}