表示状態を切り替えると、WPFで致命的なランタイムエラーが発生する

blend c# visualstatemanager wpf
表示状態を切り替えると、WPFで致命的なランタイムエラーが発生する

特定の場合にこのエラーが発生することがあります。 視覚的な状態から別の状態に切り替えるときに正確に起こります。 私はそれが悪いプロパティアニメーションから来ていると思いますが、この例外が発生する条件は何ですか? これがエラーメッセージです。

_
ランタイムで致命的なエラーが発生しました。 エラーのアドレスは、スレッド0xabcの0x58e3ba0dにありました。 エラーコードは0x80131623です。 このエラーは、CLRまたはユーザーコードの安全でない部分、または検証できない部分のバグです。 このバグの一般的な原因には、スタックを破損する可能性のあるCOM-interopまたはPInvokeのユーザーマーシャリングエラーがあります。
_

前もって感謝します

  2  1


ベストアンサー

私は説明を見つけたと思います:状態遷移中に、UIの一部を折り畳もうとしていました。 これらのパーツの中には、いくつかの動作が付加されたいくつかのコントロール(ボタン)があります。

いくつかのテストの後、ビヘイビアーがアタッチされているコントロールを折りたたむと例外がスローされるように見えることに気付きました。 折りたたむと、オブジェクトへの参照が削除され、添付された動作には例外がスローされるnull参照が残ります。 何が起こっているのか正確にはわかりませんが、これが原因だと確信しています。 「隠された」可視性でも起こるようです。 したがって、現時点で見つかった唯一の回避策は、コントロールの不透明度を下げて、コントロールの高さを0に設定することです。

誰かがこの問題を回避するより良い方法を見つけた場合…​

0


タイトルとURLをコピーしました