MouseBinding以样式覆盖EventBindings

时间:2010-01-14 04:44:34

标签: wpf event-handling styles inputbinding

我在图像上创建了一个命名样式,并且在样式中我将MouseDown事件的EventBinding设置为ResourceDictionary的代码隐藏处理器,它运行良好。 当我使用图像时如下:

<Style TargetType="{x:Type Image}" x:Key="ImageStyle">
    <EventSetter Event="MouseDown" Handler="Image_MouseDown"/>
</Style>
<!---->
<Image Style="{StaticResource ImageStyle}">
    <Image.InputBindings>
        <MouseBinding Command="Save" MouseAction="LeftClick"/>
    </Image.InputBindings>
</Image>

它导致样式化的MouseDown事件绑定不起作用。

1 个答案:

答案 0 :(得分:0)

没有样式代码很难说,但我想你是在那个样式中定义InputBindings属性,然后Image设置只是覆盖它。无论您在实际元素中设置什么,XAML都会覆盖您在该元素的样式中定义的任何内容。

如果是这种情况,则没有简单的方法将样式属性与实际属性合并。

HTH。