找不到目标元素的管理 FrameworkElement 或 FrameworkContentElement。渐变停止

Posted

技术标签:

【中文标题】找不到目标元素的管理 FrameworkElement 或 FrameworkContentElement。渐变停止【英文标题】:Cannot find governing FrameworkElement or FrameworkContentElement for target element. GradientStop 【发布时间】:2013-08-22 03:36:18 【问题描述】:

我有一个包含颜色的列表框,每种颜色都有 7 个打印头,选择打印头作为颜色。所以我的绑定变量是选择打印头时,彩色盒应具有此样式。

<Setter TargetName="colorSelectionRectangle" Property="Fill">
 <Setter.Value>
     <LinearGradientBrush SpreadMethod="Repeat" StartPoint="0,0" EndPoint="25,25">
         <LinearGradientBrush.RelativeTransform>
             <ScaleTransform ScaleX="0.01" ScaleY="0.01" />
         </LinearGradientBrush.RelativeTransform>
         <GradientStop Offset="0" Color="White" />
         <GradientStop Offset="0.5" Color="White" />
         <GradientStop Offset="0.5" Color="Binding [0].Item.PrintColor.Argb" />
         <GradientStop Offset="1" Color="Binding [0].Item.PrintColor.Argb" />
     </LinearGradientBrush>
   </Setter.Value>

我的错误是:

System.Windows.Data 错误:2:找不到目标元素的管理 FrameworkElement 或 FrameworkContentElement。 BindingExpression:Path=[0].Item.PrintColor.Argb;数据项=空;目标元素是'GradientStop' (HashCode=52327179);目标属性是“颜色”(输入“颜色”)

【问题讨论】:

你能提供更多细节吗?例如,您正在设计的实际元素以及绑定中使用的模型的性质。 【参考方案1】:

我相信你有这个问题,因为GradientStop 不是来自 MSDN 的 FrameworkElement...:

System.Object 
  System.Windows.Threading.DispatcherObject
    System.Windows.DependencyObject
      System.Windows.Freezable
        System.Windows.Media.Animation.Animatable
          System.Windows.Media.GradientStop

如果你注意到上面扩展的System.Windows.Freezable 类,那么你会看到这个类也是“可冻结的”......这意味着它不能被修改。有关详细信息,请参阅 MSDN 上的 Freezable Objects Overview 页面。

【讨论】:

以上是关于找不到目标元素的管理 FrameworkElement 或 FrameworkContentElement。渐变停止的主要内容,如果未能解决你的问题,请参考以下文章

动物园管理员法定人数。 PKIX 路径构建失败。找不到到所请求目标的有效证书路径

win10系统,每次开机都出现找不到元素

找不到 SQL Server 配置管理器

Katalon:无法单击对象:找不到ID的Web元素

Android Studio 3.2“找不到目标设备”

WPF datagrid.rowstyle 绑定