一時配列を使用して ListCollectionView を設定しました。後で、ListCollectionView を dataProvider として使用して DataGrid を表示する画面があります。ユーザーは、行を選択して [削除] ボタンをクリックすることにより、DataGrid 内の行を削除できます。
ListCollectionView が使用する元のソースにアクセスし、そこからアイテムを削除するにはどうすればよいですか?
それを行った後、アイテムは ListCollectionView から自動的に削除され、DataGrid に表示されなくなりますか (または、何かを更新する必要がありますか)。
更新 1
次のことは、私が正しい軌道に乗っているように聞こえますか? (ListCollectionViewだけでなく、ListCollectionViewのソース(「.list」ですか?)から削除したいです。)
[Bindable] private var _myLCV:ListCollectionView=new ListCollectionView(new ArrayList());
...
var obj:Object = _myLCV.getItemAt(myGrid.grid.selectedIndex); // get item user selected
_myLCV.list.removeItemAt( _myLCV.list.getItemIndex(obj) ); // delete item from source
更新 2
理由はわかりませんが (SDK 4.5.1A を使用しています)、DataGrid が削除された行を確実に更新して表示するには、UPDATE 1 の上記のコードに次のコード行を追加する必要があるようです。
_myLCV.refresh();