自定义控件 - 将动画图像设为xml

时间:2012-12-13 13:39:09

标签: wpf xaml custom-controls

我们需要开发一种阀门定制控制装置,它可以根据OPC标签的值设置阀门开/关位置的动画。 例如:如果Valve Tag的值为1,则将阀门拉到打开位置。如果Valve Tag的值为0,则将阀门拉近。控件将公开属性以提供TAG名称。

有几种方法可以对阀门进行动画处理。所以我们需要让应用程序使用控件来指定图像以打开阀门/关闭位置。是否可以将图像绘制为xaml项而不是将图像作为文件(例如:png或jpg)?

我应该为此做些什么?

1 个答案:

答案 0 :(得分:0)

您可以使用不同的DrawingBrush实例填充控制区域,具体取决于其状态。这些画笔可能在控件的资源中定义。

<UserControl.Resources>
    <DrawingBrush x:Key="valveOpen">
        ...
    </DrawingBrush>
    <DrawingBrush x:Key="valveClosed">
        ...
    </DrawingBrush>
</UserControl.Resources>
<!-- change Background when the state changes -->
<Grid x:Name="root" Background="{StaticResource valveOpen}">
    ...
</Grid>