1つ前のIEditableCollectionViewのエントリで、非常に愚直に実装した。
特に1つ1つのメソッドが何なのか調べずに直感を信じてなんとか動くようになったけど、それじゃいけないのでちょっと真面目に見ていこうと思う。
IEditableCollectionViewは、MSDNにある説明文をかりると、こういうことが書いてある。
CollectionView が実装するメソッドとプロパティを定義して、コレクションに編集機能を提供します。
CollectionViewと、どういった関係があるのかよくわからないが、コレクションの編集機能を提供してくれるようだ。
編集機能というものは、何かというものを見てみると、大体下のようなものにわけられると思う。
- コレクションに要素を新規追加
- コレクション内の要素を編集
- コレクション内の要素を削除
IEditableCollectionViewが持つメソッドとプロパティが3つのうちのどれに該当するのかをわけてみた。
- コレクションに要素を新規追加
AddNewメソッド
CancelNewメソッド
CommitNewメソッド
CanAddNewプロパティ
CurrentAddItemプロパティ
IsAddingNewプロパティ
NewItemPlaceholderPositionプロパティ(何処に新規に追加されたアイテムを追加するかを指定する) - コレクション内の要素を編集
EditItemメソッド
CancelEditメソッド
CommitEditメソッド
CanCancelEditプロパティ
CurrentEditItemプロパティ
IsEditingItemプロパティ - コレクション内の要素を削除
Removeメソッド
RemoveAtメソッド
CanRemoveプロパティ
大体名前から何をやるメソッド・プロパティかわかると思う。
編集可能なのか?編集中なのか?編集を確定するのか?編集を開始するのか?のような基本的な操作がそろっている。
次は、このメソッドの動きを順番に見ていこうと思う。
ということで多分続く。