首页 > 解决方案 > WPF 绑定颜色属性

问题描述

我对 WPF 非常陌生,并且通过一些示例控件工作并尝试调整它们以熟悉事情的工作方式。我目前的任务是下面有一个 LinearGradientBrush 代码

<LinearGradientBrush x:Key="ThumbBrush" StartPoint="0,0" EndPoint="1,0">
        <GradientStop Offset="0" Color="#c1dbe8"/>
        <GradientStop Offset="0.5" Color="#008fc7"/>
        <GradientStop Offset="1" Color="#066caa"/>
    </LinearGradientBrush>

我想将其转换为属性,以便可以修改颜色。我的想法是我可以简单地为每种颜色创建一个属性

public Color MyThumbColor1 { get; set; }
public Color MyThumbColor2 { get; set; }
public Color MyThumbColor3 { get; set; }

然后将每种颜色绑定到相应的 GradientStop

<GradientStop Offset="0" Color="{Binding MyThumbColor1}"/>
<GradientStop Offset="0.5" Color="{Binding MyThumbColor1}"/>
<GradientStop Offset="1" Color="{Binding MyThumbColor1}"/>

这不起作用,因此非常感谢有关如何绑定颜色属性的任何指导

标签: wpfxamlcolorsbinding

解决方案


看来我忘了包括

this.DataContext = this;

就在 InitializeComponent(); 之后 在 NewControl.xaml.cs 文件上


推荐阅读