2011-03-16 6 views
0

私はこのコードを持っている:DataSet - RowChangedイベントが何度も発生しましたか?

this.hRAddNewDataSet.Employee.RowChanged += new DataRowChangeEventHandler(Employee_RowChanged); 

    void Employee_RowChanged(object sender, DataRowChangeEventArgs e) 
    { 
     test++; 
     Trace.WriteLine(test.ToString()); 
    } 

私は私のアプリを実行して、1行を編集して、保存ボタンをクリックすると、RowChangedイベントが35時間を起動しますが! これはtest varの値のためにわかります。

私の質問:このような

  1. なぜこのイベント火災?
  2. 現在の列を取得するには、 が更新されていますか?
+0

イベントハンドラにブレークポイントを設定し、デバッガでe.Row、e.Action、およびcalltreeを調べる方法は? – k3b

答えて

1

なぜこのイベントはこのように発火しますか?

おそらく、イベントハンドラを複数回配線していますか?

コードの一部が行を複数回変更していますか?

現在の列はどのように更新されていますか?

ColumnChanged eventを使用し、DataColumnChangeEventArgsパラメータを確認してください。

関連する問題