WPF自定义控件问题:'Shape'没有名为'Background'的公共属性

时间:2011-03-05 18:21:24

标签: wpf silverlight xaml custom-controls code-sharing

我正在尝试创建一个可由Silverlight和WPF共享的自定义控件。为此,我不在Silverlight不支持的自定义控件模板中使用触发器 - 而是使用两个平台似乎都支持的Storyboard动画。

首先,我制作了一个适用于Silverlight的Custom控件。然后尝试在WPF中使用它并不断收到以下运行时错误: 属性路径无效。 'Shape'没有名为'Background'的公共属性。

我的自定义控件模板中的以下XAML是原因:

<VisualState x:Name="Hovered">
    <Storyboard>
       <ColorAnimation Duration="0:0:0"
                Storyboard.TargetName="PBorder"
                Storyboard.TargetProperty="(Shape.Background).(SolidColorBrush.Color)" To="White" />
    </Storyboard>
</VisualState>

WPF的这部分代码的有效XAML语法是什么?
是否可以使此XAML对Silverlight和WPF都有效?

1 个答案:

答案 0 :(得分:2)

Shape没有Background,而是Fill(背景)和Stroke(边框)。