C#WPF在Click事件上为Image添加边框

时间:2014-02-27 14:35:51

标签: c# wpf triggers border selected

我有一个C#WPF应用程序。在这个应用程序中,我得到了一个画布,我以编程方式添加图像( Canvas.Children.Add(MyImage))。 (我在各个图像上也有一些MouseMove事件。)

我的问题是:如何向图像添加事件,以便我知道它们何时被选中,并为当前选定的图像添加边框。

我以前用TextBox做过类似的事情:

<Canvas.Style>
    <Style TargetType="{x:Type Image}"><!-- With TextBox instead of Image, this works -->
        <Style.Triggers>
            <Trigger Property="IsFocused" Value="true">
                <Setter Property="BorderBrush" Value="Red"/>
                <Setter Property="BorderThickness" Value="2"/>
            </Trigger>
        </Style.Triggers>
    </Style>
</Canvas.Style>

但是因为Image没有BorderBrush / BorderThickness属性,所以上面的方法不起作用。有没有办法为选定的图像添加边框?还有在选择另一个图像时再次删除边框?

提前感谢您的回复。

1 个答案:

答案 0 :(得分:0)

您需要使用Border control

  1. 在XAML中将TargetType更改为Border。
  2. 在您的代码中,将您的图像添加到新Border控件的Child属性中。
  3. 将边框添加到Canvas.Children