void Dictionary_RowChanged(object sender, DataRowChangeEventArgs e) { switch (e.Action) { case DataRowAction.Add: case DataRowAction.Change: LanguageData dataLayer = new LanguageData(); dsLanguageData.DictionaryRow dict = toDictionaryRow((dsDictionary.DictionaryRow) e.Row); if (isValidRow(dict)) { int i = dataLayer.InsertOrUpdateDictionary(dict); if (i > 0) { if (DataChanged != null) DataChanged(this, new EventArgs()); } dsDictionary.AcceptChanges(); } break; } }