「指定された要素はすでに別の要素の論理的な子です」という問題に対する答えがあることは知っていますが、これは奇妙です。
2 つのビュー モデルがあります。親であるということParentVM
と子であるということChildVM
です。
ではParentVM
、 でユーザー コントロールを作成して表示しますDataContext=ChildVM
。ChildVMのコンストラクターには、次のようなコードがありました。
if(somecondition)
{
Xceed.Wpf.Toolkit.MessageBox.Show("sth");
}
このMessageBox.Show()
メソッドを実行すると、エラーが発生します。次に、このコードをコンストラクターからコマンドに移動すると、問題はなくなりました。
これの原因は何ですか?問題は消えたように見えますが、コードがコンストラクターから移動されたときに解決される理由を知りたいです (ビジュアル コンポーネントの初期化?)
ありがとう。