如何将图像MouseDown事件与RoutedUICommand绑定

时间:2010-02-28 06:20:33

标签: .net wpf xaml

我有一个RoutedUICommand,它可以绑定到xaml中的多个控件。我有一些Button控件和一个应绑定到此Command的图像。使用

之类的按钮绑定命令非常简单
<Button Name="btnAction1" Command="local:MainWindow.Command1"/>

但我无法找到将mousedown image事件绑定到此命令的方法。 我有什么遗漏或者真的没有办法做到这一点。

3 个答案:

答案 0 :(得分:3)

由于Image类没有定义Command属性,因此您有几个选项。您可以编写一个附加行为来处理MouseDown并引发命令。

或者您可以通过创建新的Button样式在XAML中完成所有操作。由于Button可以托管任何内容,您可以创建一个空白按钮样式,它看起来像一个图像:

<Style x:Key="EmptyButton" TargetType="{x:Type Button}">
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="{x:Type Button}">
                <ContentPresenter />
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>

然后,当你使用它时,你会这样做:

<Button Name="btnAction1" 
        Style="{StaticResource EmptyBUtton}" 
        Command="local:MainWindow.Command1">
    <Image Source="MySourceImage.jpg" />
</Button>

答案 1 :(得分:3)

答案 2 :(得分:1)

您可以使用附加行为,如this article

所示