同じデータプロバイダー(同じ参照)を共有するドロップダウンリストコントロールがいくつかあります。
ソート関数のsetdataproviderメソッドをオーバーライドしました(以下のコード)。問題は、この共有データプロバイダーを新しいドロップダウンリストに設定すると、dataprviderを共有している既存のドロップダウンコントロールがすべて選択解除される(以前に選択された値が失われる)ことです。
override public function set dataProvider(value:IList):void{
if(value is ArrayCollection){
var sort:Sort=new Sort();
var sortField:SortField = new SortField();
sortField.numeric=false;
sort.fields=[sortField];
ArrayCollection(value).sort=sort;
ArrayCollection(value).refresh();
}
super.dataProvider=value;
}