Wpf 渐变根据DependencyProperty停止颜色绑定

Wpf 渐变根据DependencyProperty停止颜色绑定,wpf,Wpf,下面,我有这些资源,我想在第三个梯度上进行绑定停止到MyColor,MyColor是独立的属性,但如果我删除绑定并放置静态颜色“#ff000000”,它正在工作,有人能帮我吗 <Grid.Resources> <LinearGradientBrush x:Key="MyBrush" EndPoint="0, 1" StartPoint="0, 0"> <GradientStop Color="#0000000

下面,我有这些资源,我想在第三个梯度上进行绑定停止到MyColor,MyColor是独立的属性,但如果我删除绑定并放置静态颜色“#ff000000”,它正在工作,有人能帮我吗

 <Grid.Resources>
            <LinearGradientBrush x:Key="MyBrush" EndPoint="0, 1" StartPoint="0, 0">
                <GradientStop Color="#00000000" Offset="1"/>
                <GradientStop Color="#FFFFFFFF" Offset="1"/>
                <GradientStop Color="{Binding Path=MyColor}" Offset="0"/>
                <!--#ff000000 -->

            </LinearGradientBrush>

            <Style x:Key="ThumbStyle" TargetType="{x:Type Thumb}">
                <Setter Property="Template">
                    <Setter.Value>
                        <ControlTemplate >
                            <Rectangle StrokeThickness="1" StrokeDashCap="Round" 
                                       Stretch="Fill" Name="ThumbContnet" Fill="{StaticResource MyBrush}"></Rectangle>
                            <!---->
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
            </Style>
        </Grid.Resources>

问候
Fadi AL-Sayyed

根据您的评论,您没有设置数据上下文本身。声明依赖项属性不足以使绑定工作。在用户控件的构造函数中写入:

public class MyControl : UserControl
{
  public static readonly DependencyProperty MyColorProperty = DependencyProperty.Register("MyColor", typeof(Color), typeof(StageToolsWindow), new FrameworkPropertyMetadata((Color)Colors.Black));

  public Color MyColor 
  {
    get { return (Color)GetValue(MyColorProperty); } 
    set { SetValue(MyColorProperty, value); } 
  }

  public MyControl()
  {
    InitializeComponent();
    DataContext = this;
  }
}

霉色的类型是什么?是字符串还是
System.Windows.Media.Color
(应该是后者)?Visual Studio输出窗口中是否显示任何绑定错误?是的,它是System.Windows.Media.Color。您如何知道数据上下文中有颜色?我设置了颜色,这是dp。public static readonly dependencProperty MyColorProperty=dependencProperty.Register(“MyColor”、typeof(Color)、typeof(StageToolsWindow)、new FrameworkPropertyMetadata((Color)Colors.Black));公共颜色MyColor{get{return(Color)GetValue(MyColorProperty);}set{SetValue(MyColorProperty,value);}