2009-03-02 14 views
2

私はインスタンス変数オブジェクトへのコントロールのデータバインドを持つフォームを持っている場合は、おそらくのようなものにすることで、ユーザは、行われた変更を元に戻すかする方法があります:DataBoundフォームの変更を簡単に元に戻すにはどうすればよいですか?

myLocalObject = DataLayer.GetCurrentState(); 

を、フォームのコントロールを持っている(と結合したが、 myLocalObject)が自動的に変更を受け取りますか?

ありがとうございます!

答えて

0

次トリックないこと私を見つけた:私はnullにのDataContextを設定しない場合は、変更を元に戻すされたときに、私の連結コントロールが変更をピックアップしていない、いくつかの理由について

var myLocalObject = DataLayer.GetCurrentState(); 
LayoutRoot.DataContext = null; 
LayoutRoot.DataContext = myLocalObject; 

を。

+0

「何らかの理由」は、状態オブジェクトが「等しい」を上書きするためです。説明については、私の投稿を参照してください:http://kentb.blogspot.com/2007/03/beware-datacontext-and-equals.html。また、あなたの回避策は、データレイヤの仕様に非常に依存しています。これは一般的な解決策ではありません。 –

関連する問題