
SolidColorBrushを色のように扱っていますが 正確にはBrushは色ではなく塗りです
- <!-- zeKey skinfile https://ze-key.blogspot.jp/ -->
- <z:Keyboard xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
- xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
- xmlns:z="clr-namespace:zeKey.Skin;assembly=zeKey"
- Width="300"
- Height="72"
- z:DragMoveBehavior.CanMove="True"
- Background="{DynamicResource 背景}"
- Foreground="{DynamicResource 文字}">
- <z:Keyboard.Resources>
- <SolidColorBrush x:Key="文字" Color="Black" />
- <SolidColorBrush x:Key="背景" Color="White" />
- </z:Keyboard.Resources>
- <Grid>
- <Viewbox>
- <TextBlock>
- Hello, world!
- </TextBlock>
- </Viewbox>
- <z:ResizeGrip />
- </Grid>
- </z:Keyboard>
- <!--
- <z:Keyboard.Resources>というタグが出てきました
- 使いまわしたいブラシやスタイルの置き場です
- 詳しい説明は省きますがzeKeyの機能により
- SolidColorBrush(単色ブラシ)は色の変更ができるようになります
- x:KeyにzeKeyの色タブで表示される文字 Colorに初期設定色を指定して
- "{DynamicResource 背景}"のように参照します
- 色をリアルタイムで変更可能になりましたが つまみの色まで変わってしまいました
- 親の属性の値が子要素に引き継がれるものがあります FontSizeもそうでした
- z:KeyboardのBackground Foreground指定が
- TextBlock z:ResizeGripに引き継がれて色が変わります
- 20行目を
- <z:ResizeGrip Foreground="Black"/>
- に変えてください 新たに指定した場合は 引き継いだ規定値より優先されます
- こうするとテキストだけが変わるようになります
- -->
なのでグラデーションブラシや画像ブラシ等もあります
Background等の属性はほとんどの場合 Brushを要求するので簡単に指定できるようにSolidColorBrushで指定することにしています
グラデーションは別の機会に解説します
0 件のコメント :
コメントを投稿