【.NET】BindingSourceの利点

.NET Framework 2.0から新たに使えるようになったBindingSource。何が出来るのかよく分からなかったので調べたメモ。

【MSDN】BindingSource コンポーネントの概要

【MSDN】BindingSource コンポーネント アーキテクチャ

詳しくは上記のドキュメントを読んでもらうとして、個人的に体感したのは

  • デザイン時のサポート
  • 伝達性の管理

▼デザイン時のサポート

Visual Studioで開発していると、

データベース(DataSet) ⇔ BindingSource ⇔ コンポーネント

というのをデザイナー(GUI)で全てできるので便利。

▼伝達性の管理

データを挿入する場合などBindingSourceやコンポーネントに値をセットしておいて、EndEditメソッドを実行すると、そこでデータベースに反映されるので、行追加イベントや値更新イベントなどの制御をやりやすい。

逆にEndEditを使うタイミングを良く考えないと変にイベントが走って動作がおかしくなる。

キャンセルする場合はCancelEditメソッドを使えば初期状態に戻るので、「リセット」ボタンに使ったりするのに便利。

 

今のところはこんな感じ。

まだ使いこなせてないので、MSDNに書いてあることの半分も理解しない。この辺は実際に使ってみるしかないか。