<!-- 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"/>
に変えてください 新たに指定した場合は 引き継いだ規定値より優先されます
こうするとテキストだけが変わるようになります
-->
SolidColorBrushを色のように扱っていますが 正確にはBrushは色ではなく塗りですなのでグラデーションブラシや画像ブラシ等もあります
Background等の属性はほとんどの場合 Brushを要求するので簡単に指定できるようにSolidColorBrushで指定することにしています
グラデーションは別の機会に解説します
0 件のコメント :
コメントを投稿