Microsoft Team System が提供するテスト スーツを使用して、WPF データバインディングを単体テストしようとしています。私のテストのほとんどはユーザーコントロール用であり、実際にはウィンドウ上ではないため、ウィンドウを表示せずにバインディングをテストできるようにしたいと考えています。これは可能ですか、それともより良い方法がありますか? 以下のコードは、ウィンドウを表示すると機能しますが、表示しないとバインディングが更新されません。
Window1_Accessor target = new Window1_Accessor();
UnitTestingWPF.Window1_Accessor.Person p = new UnitTestingWPF.Window1_Accessor.Person() { FirstName = "Shane" };
Window1 window = (target.Target as Window1);
window.DataContext = p;
//window.Show(); //Only Works when I actually show the window
//Is it possible to manually update the binding here, maybe? Is there a better way?
Assert.AreEqual("Shane", target.textBoxFirstName.Text); //Fails if I don't Show() the window because the bindings aren't updated