SilverlightのオブジェクトにNULLを設定すると、オブジェクトプロパティへのデータバインディング

StackOverflow https://stackoverflow.com/questions/5007903

  •  14-11-2019
  •  | 
  •  

質問

擬似コードサンプル:

<UserControl>
   <ComboBox SelectedValuePath="Id" SelectedValue="{Binding CurrentObject.Id, Mode=TwoWay}" ItemSource="{Binding Groups}"/>
   <ComboBox SelectedValuePath="Name" SelectedValue="{Binding CurrentObject.Status, Mode=TwoWay}" ItemSource="{Binding Statuses}"/>
</UserControl>
.

<MyObject>タイプのオブジェクトをこのUserControlに渡して、それを修正してから保存します。これを行った後、CurrentObject = nullで状態をリセットしています。2回目のパスでは、それらのコンボボックスには選択された値がありませんが、実際のデータがあります。どうやって修正できますか?

正しい解決策はありません

他のヒント

データバインディングのデータソースをいくつかのオブジェクトに設定する必要があります。それ以外の場合は、データバインディングは機能しません。NULLへのバインドは決して動作しません。
NULLにCurrentObjectを設定しないでくださいが、CurrentObject.IDを0に設定し、それを知っているとすぐに最終値にリセットします(2パス目)。オブジェクトがInotifyPropertyChangedを実装すると、ユーザーインターフェイスの値が更新されます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top