一起学习Avalonia(十)
经过一段时间调整,我们继续了解。在以前的初略控件介绍后,我们将逐步扩展。
今天继续介绍样式
样式
先看看我们经常写的的xmal.
<StackPanel>
<Button Margin = "20" Content = "Btn" />
<Button Margin = "20" Content = "Style Btn" />
</StackPanel>
(1)颜色
<Window.Styles>
<Style Selector = "Button">
<Setter Property = "Foreground" Value = "# FFFFFFFF" />
<Setter Property = "BorderThickness" Value = "2" />
<Setter Property = "Background" Value = "# FFDD4812" />
<Setter Property = "BorderBrush" Value = "# FFFFFFFF" />
</Style>
</Window.Styles>
在窗口中加入此代码,实现颜色的修改。
(2)边缘修改圆形
添加另外一种样式。
<Style Selector = "Button/template/ContentPresenter">
<Setter Property = "CornerRadius" Value = "10" />
</Style>
这里通过选择器,使用模板控件修改属性。
(3)解决上面样式不足
使用伪类。
<Style Selector = "Button: pointerover / template / ContentPresenter">
<Setter Property = "BorderBrush" Value = "# FFDD4812" />
</Style>
这里使用的伪类是pointerover;
其他伪类包括:focus
,:disabled
,:pressed
为按钮, :checked
用于复选框等。
如果需要指定控件,则通过classes设置,如下:
<StackPanel>
<Button Margin = "20" Classes = "btn" Content = "Style Btn" />
</StackPanel>
(4)样式类
<Style Selector="TextBlock.h1">
...
</Style>
列表式,同时使用多个伪类
<Button Classes="h1 blue"/>
样式类也可以使用Classes
集合在代码中进行操作
control.Classes.Add("blue");
control.Classes.Remove("red");
具体内容可以查阅官方文档。
这部分就介绍这些。