一起學習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");

具體內容可以查閱官方文檔。

這部分就介紹這些。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章