@IT会議室は、ITエンジニアに特化した質問・回答コミュニティ「QA@IT」に生まれ変わりました。ぜひご利用ください。
- PR -

DataTableのRowChangedイベント

1
投稿者投稿内容
indigo-x
大ベテラン
会議室デビュー日: 2008/02/21
投稿数: 207
お住まい・勤務地: 太陽の塔近く
投稿日時: 2009-01-31 21:51
DataTableのRowChangedイベントを使用しているのですが
DataRow.Delete()メソッドを呼び出しても
イベントが発生しないのですがどうしてなんでしょうか?

AddもChangeも発生するのですが。
よろしくお願いします。
GENZO
大ベテラン
会議室デビュー日: 2003/11/26
投稿数: 111
お住まい・勤務地: 名古屋
投稿日時: 2009-02-01 22:35
試してはいませんが、DataRow.Deleteの場合、RowDeletedとかRowDeletingではないでしょうか?
indigo-x
大ベテラン
会議室デビュー日: 2008/02/21
投稿数: 207
お住まい・勤務地: 太陽の塔近く
投稿日時: 2009-02-02 10:43
引用:

GENZOさんの書き込み (2009-02-01 22:35) より:
試してはいませんが、DataRow.Deleteの場合、RowDeletedとかRowDeletingではないでしょうか?



ご返事ありがとうございます。

言われる通りだと思います。
ただ、いろいろ試した結果なんですが引数のenum DataRowActionは全てに対して
存在しているのでRowChangedでもAction.Deleteが発生するように思って
しまいがちです。

あとRowChangedのイベントの発生が良くないのも勘違いする原因かと
DataRowAction.Add /DataRowAction.Change等は発生しますが

あとRowAddedイベントが無いのもなんか変。。。
デューン
大ベテラン
会議室デビュー日: 2004/04/21
投稿数: 174
お住まい・勤務地: Tokyo
投稿日時: 2009-02-02 12:06

追加はTableNewRowというのがあるようですね。

http://msdn.microsoft.com/ja-jp/library/w9y9a401(VS.80).aspx
http://msdn.microsoft.com/ja-jp/library/system.data.datatable.tablenewrow(VS.80).aspx

(いい悪いはさておき)
Deleteの場合はマークされたことに対してのイベントであるため、
Changedは発生しないのかもしれません。
1

スキルアップ/キャリアアップ(JOB@IT)