显然,同一般的.net OnXX行为不同 ,通常的OnXX 会检查XX事件是否有设置,有的话就执行.
这段代码在DataTable.NewRow 中被调用
大家可以看到,NewRowCreated中在检查onTableNewRowDelegate了,如果这个没有设置,则OnTableNewRow是不会被触发的,因此, 比方说你想要一个自定义的事件,比方说 NewEntity ,你无法在OnTableNewRow来挂接它. 你要先挂接TableNewRow事件,然后这个OnTableNewRow才能生效.这不是开玩笑吗? //protected override void OnTableNewRow(DataTableNewRowEventArgs e) //{ // base.OnTableNewRow(e); // if (this.NewEntity != null) // this.NewEntity(this, new NewEntityEventArgs<T>((T)e.Row)); //}
|