2010-02-23 33 views

回答

0

只需从其容器中移除图像,创建边框,添加图像作为边框的子项,然后将边框添加回图像所在的容器。如果您遇到困难,请发布代码,我会帮您调整它,但这不应该很困难。你可以在代码隐藏中做到这一切。

+0

感谢迈克,但它会在我的代码中的其他地方产生问题。有没有办法让边界成为Image的孩子? – user279244 2010-02-23 08:30:39

1

有很多方法。我推荐使用xaml这样的东西。

<Border BorderThickness="2"> 
    <Border.BorderBrush> 
     <SolidColorBrush Color="LightGray" Opacity="{Binding Path=IsSelected, Converter={StaticResource BooleanToDouble}}"/> 
    </Border.BorderBrush> 
    <Image Source="{Binding Path=ImageUri}"/> 
</Border> 

该块的DataContext必须具有IsSelected属性或类似的东西。你也必须实现一个IValueConverter转换为1和虚假为0.

+0

这是一个更优雅的解决方案。 – 2010-02-23 15:41:15

+0

好主意,但我缺少一个具有IsSelected属性或类似的东西。任何想法?目前我有边框,边框内有图像,但是都没有像IsSelected一样): – 2010-07-29 15:43:10

+0

@stefan,IsSelected是数据上下文的属性,它是您自己设计的模型图层对象(了解MVVM或MVC模式)。 – 2010-07-30 06:20:51