カテゴリー別アーカイブ: WPF

最強のWPF MVVMインフラ「Livet」をVS2013で使う

最近GitHubの界隈の誤報で一躍有名となった”MVVM”GUIアーキテクチャパターン。

そのオリジナルたるWPFでMVVMをサポートするインフラには、MVVM Light ToolkitPrismなど色々とありますが、それらの中でも最強のMVVMインフラが「Livet」です。

 

LivetLogo

 

そのLivetは専用のインストーラーにより導入することが推奨されていますが、インストールパッケージを作るためのツールのバージョンの関係で、先日リリースされた「Visual Studio 2013」にはまだ対応していません。しかし、せっかく素晴らしいツールですから、ぜひともVS2013でも使いたい、そう思うのが人情というものです。

 

そこで、簡易的にVS2013でもLivetを使えるようにする、インストールスクリプトを作成しました。

 

Livet/Installer/simple_installer_for_vs2013.bat at add-simple-installer-for-vs2013 · masaru-b-cl/Livet · GitHub

 

GitHubからリポジトリをcloneやダウンロードした後、Installerフォルダーに上記スクリプトを配置して実行してください。やっていることは、LivetのインストーラーがVisual Studioのインストールフォルダー内にインストールするスニペット、テンプレートを、「ドキュメント」フォルダー内の「Visual Studio 2013」のスニペット、テンプレート用フォルダーにコピーしているだけです。

 

image

image

 

Livetの素晴らしいところの一つは、プロジェクトテンプレートにコアライブラリも含まれているため、追加で参照設定必要がないことです。おかげで、こんな簡単なスクリプトでインストールしたテンプレートでも、Livetのプロジェクトを作成、ビルド、実行できます。

 

image

 

VS2013正式対応版のLivetがリリースされるまでの「繋ぎ」として、是非活用ください!

広告

Control.BackgroundプロパティにはColor型を直接バインドできない

知ってる人には当たり前の話でしょうが、WinFormsの常識が通じないところだったのでメモ。

 

こんなMainWindow.xamlがあったとして、

 

Control.Backgroundプロパティにバインドしている、MainWindowViewModel.Backgroundプロパティの型がColorsだと、失敗します。

 

image

 

正しくバインドできるようにするには色々方法がありますが、MainWindowViewModel.Backgroundプロパティを、Control.Backgroundプロパティに合わせてBrush型にするのが簡単そうです。

Control.Background プロパティ (System.Windows.Controls)

 

image

 

ちなみに、こちらを参考にしました。

c# – How can I bind a background color in WPF/XAML? – Stack Overflow

今後もこういう感じでWinForms→WPFで引っかかったら、ちょこちょこと紹介していければと思います。