PYSharp Asked:2024-10-07 18:16:05 +0000 UTC2024-10-07 18:16:05 +0000 UTC 2024-10-07 18:16:05 +0000 UTC 在 Avalonia 中单击按钮时更改按钮的颜色 772 当我点击 Avalonia UI 中的按钮时,如何让它改变颜色?当我在网上找不到任何关于这方面的信息时,要么是那里有不清楚的地方,要么是这些文章已经找不到了。 c# 1 个回答 Voted Best Answer Embedder 2024-10-07T20:56:23Z2024-10-07T20:56:23Z 您需要修改该控件的样式Button。例如像这样 <Grid RowDefinitions="Auto,*"> <Grid.Styles> <Style Selector="Button:pressed /template/ ContentPresenter#PART_ContentPresenter"> <Setter Property="Background" Value="Red" /> <Setter Property="BorderBrush" Value="Green" /> <Setter Property="Foreground" Value="White" /> </Style> </Grid.Styles> <Button Grid.Row="0" Content="Нажми меня" HorizontalAlignment="Center" /> . . . </Grid> 选择器值 ( Selector) 包含一个字符串,用于描述我们将应用样式的控件。 如果我们考虑上面的例子,样式将应用于ContentPresenterc 命名的PART_ContentPresenter,而 c 又是 template( /template/) 实现的一部分Button。嗯,锦上添花的是伪类 ( :pressed),它表示只有按下按钮时才会应用该样式。 没有Avalonia控件的样式和主题的描述,但所有这些都可以在GitHub上的源代码中找到。要大致了解此机制的工作原理,您可以阅读以下链接: Avalonia UI - 样式 Avalonia UI - 样式选择器语法 Avalonia UI - 伪类
您需要修改该控件的样式
Button。例如像这样选择器值 (
Selector) 包含一个字符串,用于描述我们将应用样式的控件。如果我们考虑上面的例子,样式将应用于
ContentPresenterc 命名的PART_ContentPresenter,而 c 又是 template(/template/) 实现的一部分Button。嗯,锦上添花的是伪类 (:pressed),它表示只有按下按钮时才会应用该样式。没有Avalonia控件的样式和主题的描述,但所有这些都可以在GitHub上的源代码中找到。要大致了解此机制的工作原理,您可以阅读以下链接: