private void DataChanged(object sender, DataRowChangeEventArgs args) { DataTableReader reader = (DataTableReader)_readerWeak.Target; if (reader != null) { reader.DataChanged(args); } else { UnSubscribeEvents(); } } }