Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何知道操作系统的当前颜色?_C#_Wpf_Xaml_Styles_Controltemplate - Fatal编程技术网

C# 如何知道操作系统的当前颜色?

C# 如何知道操作系统的当前颜色?,c#,wpf,xaml,styles,controltemplate,C#,Wpf,Xaml,Styles,Controltemplate,我想编辑工具栏上的按钮,但当我尝试编辑按钮样式时,我注意到当前的solidColorBrush来自PresentationFramework.Aero。我想获得已按下的工具栏按钮的SystemColor 我说清楚了吗? 如果没有,请告诉我 我认为您无法访问这些画笔,因为您不知道它们的资源密钥。这些画笔是在aero主题的资源文件中定义的,它们在SystemColors中不可见 也许你真的不想改变工具栏按钮的模板,但需要重新设计一下。在这种情况下,您可以基于默认工具栏按钮样式创建样式,而无需关心当前

我想编辑工具栏上的按钮,但当我尝试编辑按钮样式时,我注意到当前的
solidColorBrush
来自
PresentationFramework.Aero
。我想获得已按下的
工具栏按钮的
SystemColor

我说清楚了吗? 如果没有,请告诉我


我认为您无法访问这些画笔,因为您不知道它们的资源密钥。这些画笔是在aero主题的资源文件中定义的,它们在
SystemColors
中不可见

也许你真的不想改变工具栏按钮的模板,但需要重新设计一下。在这种情况下,您可以基于默认工具栏按钮样式创建样式,而无需关心当前主题:

<Style x:Key="ButtonStyle1" TargetType="{x:Type Button}"
    BasedOn="{StaticResource {x:Static ToolBar.ButtonStyleKey}}">
    <!--custom setters and triggers-->
</Style>


如果您想让它显示系统颜色,但不覆盖颜色,或者我遗漏了什么?哦,好吧,这是我尝试修改模板时混合生成的默认代码。那么您希望如何处理此模板或颜色?现在还不清楚你的目标是什么。使用的颜色显示在标记中:#99CCFF(可能是浅灰色)