c# - 更改 slider 颜色

标签 c# wpf slider

这应该很容易做到,但我还没有找到我需要的信息。我想要的就像改变滑动条的颜色一样简单:

enter image description here

我正在使用 ModernUI,默认的条形颜色与我的背景非常相似,我想让它更亮一些。

最佳答案

您应该能够通过编辑模板来更改它。

右键单击您的 slider ,编辑模板 -> 编辑副本。;.

将出现一个新窗口,询问您 VS 应将 ControlTemplate 和样式的 XAML 代码放在哪里。检查标签等。

祝你好运!

编辑:
好的,开始了。

假设您已经有一个 ModernUI 应用程序,请创建一个名为 Assets 的新文件夹, 右击它 Add -> New Item... -> ModernUI Theme .随心所欲地调用它。

在新创建的 XAML 文件中插入这些 SolidColorBrushAccentColorColor标签:

<SolidColorBrush x:Key="SliderSelectionBackground" Color="Red" />
<SolidColorBrush x:Key="SliderSelectionBorder" Color="Red" />
<SolidColorBrush x:Key="SliderThumbBackground" Color="Red" />
<SolidColorBrush x:Key="SliderThumbBackgroundDisabled" Color="Red" />
<SolidColorBrush x:Key="SliderThumbBackgroundDragging" Color="Red" />
<SolidColorBrush x:Key="SliderThumbBackgroundHover" Color="Red" />
<SolidColorBrush x:Key="SliderThumbBorder" Color="Red" />
<SolidColorBrush x:Key="SliderThumbBorderDisabled" Color="Red" />
<SolidColorBrush x:Key="SliderThumbBorderDragging" Color="Red" />
<SolidColorBrush x:Key="SliderThumbBorderHover" Color="Red" />

其中每一个都代表 Thumb 的一种状态( slider “矩形”)。之后打开你的App.xaml文件并在其中包含您的主题(这是我的文件的样子):

<Application x:Class="ModernUIApp1.App"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             StartupUri="MainWindow.xaml">
    <Application.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                <ResourceDictionary Source="/FirstFloor.ModernUI;component/Assets/ModernUI.xaml" />
                <ResourceDictionary Source="/FirstFloor.ModernUI;component/Assets/ModernUI.Light.xaml"/>
                <ResourceDictionary Source="/Assets/ModernUI.Theme1.xaml" />
            </ResourceDictionary.MergedDictionaries>
        </ResourceDictionary>
    </Application.Resources>
</Application>

<ResourceDictionary Source="/Assets/ModernUI.Theme1.xaml" />位代表我的主题。 将所有颜色设置为红色,这就是它的样子:

My RED slider

我想这更清楚了! 希望你喜欢。

编辑:
当您应用主题时,它会发生变化。但是,由于您熟悉样式,我将发送完整的模板。您可以做的是仅使用此模板创建一个 UserDictionary,当您想要使用它时,更改 slider 模板属性。您将只想更改 Thumb Tags。 Pastebin code

如果你只想更改这一个,请将模板放在 <Windows.Resources> 之间或 <Slider.Resources> - 另一种选择是创建您自己的控件

关于c# - 更改 slider 颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19123301/

相关文章:

c# - MVC OutputCaching 是否优先于设置缓存响应 header ?

c# - 如何正确使用 LINQ2SQL DataContext 对象;每次使用重新创建都会让人头疼

javascript - 为什么我的 javascript 代码不执行幻灯片放映

javascript - 具有自定义皮肤的双 slider 控件

wpf - 你知道 WPF MonthPicker 控件吗?

Javascript - 具有非线性刻度的负小数输入范围

c# - 使用 ResourceManager C# 访问来自不同项目的资源文件

c# - "using"有什么好处

c# - 一个属性上的多个 Storyboard

.net - WPF - 如何将 WrapPanel 中的所有项目居中?