2009-06-15 15 views
0

別のクラスによって設定されたプロパティを持つクラスがあります。このプロパティセッターの中で、プログラムが爆発する。Visual Studio 2008でINotifyPropertyChangedを使用してプロパティの設定をデバッグする

実際にどのクラスがプロパティを設定したのかを知るだけでいいです。

私はstacktraceを見ることができると思っていましたが、私はINotifyPropertyChangedを使用しているので、私が探している情報すべてを私に与えてくれないと思います。この場合に役立ちます。ここ

は、スタックトレースです:!

MyProject!MyProject.MyClass.MyProperty.set(string value = "") Line 24 C# 
[Native to Managed Transition] 
[Managed to Native Transition] 
System.Windows.dll!System.Windows.CLRPropertyListener.Value.set(object value = "") + 0x58 bytes 
System.Windows.dll!System.Windows.PropertyAccessPathStep.Value.set(object value = "") + 0x28 bytes 
System.Windows.dll!System.Windows.PropertyPathListener.LeafValue.set(object value = "") + 0x28 bytes  
System.Windows.dll!System.Windows.Data.BindingExpression.UpdateValue() + 0x26c bytes  

System.Windows.dll System.Windows.Data.BindingExpression.TargetTextBoxLostFocus(オブジェクト送信者= {} System.Windows.Controls.TextBox 、System.Windows.RoutedEventArgs e = {System.Windows.RoutedEventArgs})+ 0x55 bytes
System.Windows.dll!System.Windows.CoreInvokeHandler.InvokeEventHandler(int typeIndex = 160、System.Delegate handlerDelegate = {System.Windows。 RoutedEventHandler}、オブジェクト送信者= {System.Windows.Controls.TextBox}、オブジェクトargs = {System.Windows.RoutedEventArgs})+ 0x6b3バイト System.Windows.dll!MS.Internal.JoltHelper.FireEvent(System.IntPtr unmanagedObj = 173934552、System.IntPtr unmanagedObjArgs = 273432032、int型argsTypeIndex = 160、文字列eventNameの= "2910 @ M")+ 0x335バイト

答えて

1

Hmm。 。 。

プロパティ設定ツールでポイントをブレークし、コールスタックウィンドウを使用してコールスタックウィンドウを呼び出すことができます。

+0

さらに検討すると、INotifyPropertyChanged – zachary

+0

では機能しません。代わりに、プロパティを呼び出すコードではなく、Silverlightコントロール – zachary

1

少し古い学校ですが、Debug.WriteLine()文を追加してプログラムの実行をトレースしてみましたか?プログラムの実行中に、VS出力ウィンドウにDebug.WriteLine()の結果を表示することができます。

関連する問題