WPF:以编程方式向图像添加边框

时间:2010-02-24 15:38:30

标签: c# wpf

我想以编程方式为图像添加样式。这是我的代码

<UserControl.Resources>
       <Style x:Name="BranchPages" x:Key="BranchPages">
            <Setter Property="Control.Template">
                <Setter.Value>
                    <ControlTemplate>
                        <Border BorderThickness="2" BorderBrush="Green">
                        </Border>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>
</UserControl.Resources>

和代码behid如下

  Style greenbdr = (Style)FindResource("BranchPages");
  page.img.Style = greenbdr;

但它不起作用请帮助

2 个答案:

答案 0 :(得分:9)

此解决方法可能有所帮助:

由于Image没有边框,请将其放在Border控件中。

<Border Name="imgBorder" BorderThickness="2" BorderBrush="Transparent">
        <Image Name="img"></Image>
</Border>

然后针对该Border的属性创建逻辑代码。

imgBorder.BorderBrush = Brushes.Green; 

答案 1 :(得分:0)

Image不是Control,它只是派生自FrameworkElement,因此没有Template属性。 它有一个Style,所以你可以用它来设置它的属性,比如Cursor,Horizo​​ntalAlignment等。