【发布时间】:2014-02-28 00:54:11
【问题描述】:
我有一个 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 属性,所以上面的方法不起作用。有什么方法可以为选定的图像添加边框?并且在选择另一个图像时再次删除边框?
提前感谢您的回复。
【问题讨论】:
-
Border bdr = new Border()然后将图像添加为bdr的子图像,例如bdr.Child = image。画布左侧等将在边框上而不是图像上。
标签: c# wpf triggers border selected