shuhelohelo’s blog

Xamarin.Forms多めです.

.NET Core 3.0 WPF with Prismなプロジェクトで画面デザイナを使いたい(1)

やっと準備が整いました。 画面デザイナを使う手順については以下のサイトの内容に沿っていきます。

rksoftware.hatenablog.com

.NET FrameworkWPFプロジェクトを作る

f:id:shuhelohelo:20190428154951p:plain

こちらは当然、画面デザイナが使えます。 f:id:shuhelohelo:20190428155057p:plain

.NET Framework側のXAMLを削除する

f:id:shuhelohelo:20190428155427p:plain

.NET CoreのXAMLを「リンクとして追加」する

まずはApp.xamlを追加します ファイルの種類をXAMLにしておくことを忘れずに。 でないとxamlファイルが表示されず、選べません。 f:id:shuhelohelo:20190428160104p:plain

こんなことができるんだ、と驚きました。

追加されました。 でも、「無効なマークアップ」。

f:id:shuhelohelo:20190428160302p:plain

よくみてみるとApp.xamlでエラーが出ています。

f:id:shuhelohelo:20190428160521p:plain

というのも、.NET FramworkのWPFプロジェクトではApplicationクラスが使われますが、PrismテンプレートではPrismApplicationクラスが使われるからです。

PrismApplicationを使えるように、こちらにもCIビルドなPrism.Unityをインストールします。 f:id:shuhelohelo:20190428160724p:plain

これでApp.xamlのエラーはなくなりました。

f:id:shuhelohelo:20190429005343p:plain

同様にMainWindow.xamlも追加します。 PrismのプロジェクトではMainWindow.xamlViewsフォルダ内にあります。 f:id:shuhelohelo:20190429005742p:plain

追加されたMainWindow.xamlを開くとデザイナにウィンドウが表示されます。

f:id:shuhelohelo:20190429010012p:plain

ウィンドウのタイトルはバインディングが使われているので現時点では表示されません。 とはいえ、これで.NET Core 3.0 WPF with Prismなプロジェクトで画面デザイナを使えるようになりました。

動作を確認する

確認のためにボタンを追加してみます。 Grid内のContentControlを消してButtonを追加します。

f:id:shuhelohelo:20190429011224p:plain

では実行してみましょう。

f:id:shuhelohelo:20190429011429p:plain

できました。

今後

今回は画面デザイナを使えるようになりましたが、Prismの恩恵を受けられて初めて目的達成といえます。 次回からはPrismの機能が使えるかを確認していきます。