WInUI3関連記事
https://tera1707.com/entry/2022/02/06/144447#WinUI3
やりたいこと
ResourceDictionaryの中に書いた、もしくは中で使っているリソースを、コードから使いたい。 まずは、ResourceDictionaryの中で使っているColorをコードでも使いたい。
前提
やり方
Application.Current.Resources
を使う。
サンプルコード
SystemColorButtonFaceColor
という色(Windows.UI.Color)を取ってきて、
グリッドのBackgroundに適用する例。
(SystemColorButtonFaceColorは自分で作ったColorではなく、元からあるSystemの色。)
private void Button_Click(object sender, RoutedEventArgs e) { var color = (Windows.UI.Color)Application.Current.Resources["SystemColorButtonFaceColor"]; MainGrid.Background = new SolidColorBrush(color); }
こちらは、ResourceDictionaryの中に自分で定義したSilidColorBrushを使う例。
private void Button_Click_1(object sender, RoutedEventArgs e) { var brush = (SolidColorBrush)Application.Current.Resources["MyButtonBackground"]; MainGrid.Background = brush; }