Wednesday, April 27, 2005

Долго мучался с DataBinding'ом. Никак не мог понять, почему при заполнении контролов данными:
       oleDbDataAdapter1.Fill(dataSet,"Authors");
они заполняются, а при попытке записать изменненую инфорамцию из контрола в таблицу ничего не происходило:

if (e.KeyChar=='\u000D')
{
       oleDbDataAdapter1.Update(dataSet,"Authors");
       System.Windows.Forms.MessageBox.Show("Update successful");
}

В микрософтовском учебном курсе 70-316 ни слова по этому поводу :( Ларчик оказалось открывался просто, надо было указать для свойства BindingContext текущей формы что операция редактирования завершена:
       BindingContext[dataSet,"Authors"].EndCurrentEdit();
И лишь затем вызывать Update.

No comments: