2009-08-19 11 views
0

私はWPF Toolkit DataGridを使用していますが、現在、データをソースにコミットする際に問題があります。データをコミットしていないセルのタブまたは選択解除

私のグリッドはCLRオブジェクトリストにバインドされています。コンバータには変換と変換の両方のバックメソッドが実装されています。

ユーザーがセルにEnterキーを押してもセルの選択を解除したりタブから外れたりすると、双方向バインディングが正常に機能します。入力されたデータは失われます。

CellEditEndingイベントにブレークを入れました。TabとEnterの両方のイベントが同じように見えますが、コンバーターのConvertBackメソッドに到達すると値は空です。

ご協力いただければ幸いです。

答えて

1

デフォルトのLostFocusではなく、コントロールのBindingのUpdateSourceTriggerパラメータをPropertyChangedに変更してみてください。

例:

  <TextBox 
      Width="75" 
      VerticalAlignment="Top" 
      Margin="10" 
      Text="{Binding 
      Source={StaticResource data}, 
      Path=Age, 
      UpdateSourceTrigger=PropertyChanged, 
      ValidatesOnDataErrors=True, 
      ValidatesOnExceptions=True}" 
      Style="{StaticResource textBoxInError}" /> 
+0

これは明らかに今追いついたが、今のところ正常に動作し、各キーストロークに変更されている...うまく働きました。 しかし、これは明らかに何かが型付けされることを許さず...(IEditableObjectのように)取り消すためにエスケープされます。 – Oliver

関連する問題