「ロナえる」の夫です。
今回は、C#でApplication.Resourceを利用するにあたってハマったことと、その対処方法を紹介します。
Application.Resourceで何をしようとしたのか
僕がやりたかったことは、
- App.xaml(Application.Resource)にStyleを定義
- 他のxamlで定義したUIに上記Styleを反映
そのために、App.xamlと他のxaml(ここでは、MainWindow.xaml)を次のように記述しました。
App.xaml
MainWindow.xaml
発生した例外
実行してみると、次の例外が発生しました。。。
Exception: 'DefaultStyle' という名前のリソースが見つかりません。リソース名は大文字と小文字を区別します。
ググってみても「Application.Resourceは簡単に使えるよ!!!」みたいなものばっかり。。。
解決策
ググっていくと最終的にこちらに辿り着きました!
https://github.com/PrismLibrary/Prism/issues/1575
「Application.Resourceに1要素だけだと、ダメな時あるからもう一つ足して」
のようなことが記載してあり、その通りに1要素追加したらうまく行きました!!!!!
今回、意味はないけど次の一文を追加
<SolidColorBrush x:Key="MyBackground" Color="Blue"/>
App.xaml
無事、Styleが反映されてUIが表示されました。