いろいろ備忘録日記

主に .NET とか Go とか Flutter とか Python絡みのメモを公開しています。

XAMLデザイナでViewModelが存在しないと言われた場合のメモ

忘れない内にメモメモ。

最近、Mac上でParallelsを動かしてVisual Studio 2013で開発しているのですが、WPFアプリを作っていてViewModelをXAML上で

<Window.DataContext>
  <local:MainViewModel />
</Window.DataContext>

とかすると、「MainViewModelが存在しません。」というエラーが表示されました。ちゃんとクラスはあるのにです。しかも、同じプロジェクト上に、、、。

clr-namespaceの記述をいろいろ変えてみたけど駄目。ネットで調べてみると

c# - The name "XYZ" does not exist in the namespace "clr-namespace:ABC" - Stack Overflow

という投稿がありました。ここに原因書いてありました。原因は、ネットワークドライブ上にプロジェクトを保存していて信頼されていない場所にあるアセンブリだったから。

ParallelsWindows入れると、"Home on psf"というネットワークドライブが作成されるのですが、これが悪さしていた模様。VSでもプロジェクト保存場所のデフォルトがこの下となっていたので、この現象が発生していました。プロジェクトをCドライブとかで作成すると、いつも通りちゃんと見えるようになりました。


過去の記事については、以下のページからご参照下さい。

サンプルコードは、以下の場所で公開しています。