WPF を使用して Surface2 プロジェクトを構築しています。Visual Studio 2010 を SP1 で使用し、Expression Blend 4 を SketcFlow で使用しています。
Expression Blend でプロジェクトを開くと、メイン ビュー xaml のデザイナー ビューを読み込んだ後、プログラムが応答を停止します。次に、それを強制終了するか、Visual Studio でデバッグするかを選択できます。
xaml ビューには、スキャッター ビュー、マップ コントロール、およびタグ ビジュアライザーしかありません。
これは、Visual Studio でこれをデバッグするときに発生するエラーです。
System.InvalidOperationException was unhandled
Message=The scene node must be a composite node to access properties.
Source=Microsoft.Expression.DesignSurface
InvalidOperationException は、親以外から UI スレッドにアクセスすることに関連しているようです ( thisおよびthisに基づく)。後でマップレイヤーの上にいくつかのポリラインを描画しますが、同じ実装が純粋な非サーフェス WPF プロジェクトで機能するため、問題は発生しません。
私のターゲット フレームワークは、Visual Studio 側で .NET Framework 4 に設定されています。このトピックを見つけました: Expression Blendで Microsoft Surface コントロールを使用する 、しかし、これは私の状況では役に立たないのではないかと心配しています。Visual Studio から空の Surface2 WPF プロジェクトを作成し、それを Blend で開くと、すべて正常に動作します。また、Visual Studio 2010 で作成された Expression-Blend 4 で WPF プロジェクトを開こうとしたときのトラブルで説明されているように、プラットフォームを任意の CPU に手動で設定しても機能しませんでした。
迅速な回避策の解決策やアイデアはありますか? デザイナーではなく独自のエディターで Blend にビュー xaml を開くように強制する方法を試してみることを考えていましたが、その方法を見つけることができませんでした。