C# 如何为图像添加边框?

C# 如何为图像添加边框?,c#,wpf,C#,Wpf,为什么我不能为我添加的图像添加边框?这个代码怎么了 <Border Name="imgBorder" BorderThickness="2"> <Image Height="150" HorizontalAlignment="Left" Margin="90,239,0,0" Name="image1" Stretch="Fill" VerticalAlignment="Top" Width="200" Sou

为什么我不能为我添加的图像添加边框?这个代码怎么了

<Border Name="imgBorder" BorderThickness="2">
    <Image Height="150" 
     HorizontalAlignment="Left" 
     Margin="90,239,0,0" Name="image1" 
     Stretch="Fill" VerticalAlignment="Top" 
     Width="200" 
     Source="/ControlsBasics-WPF;component/GalleryImages/Lighthouse.jpg" 
     ImageFailed="image1_ImageFailed" />

</Border>

边框颜色的默认值(也称为
BorderBrush
)为空,这意味着除非指定边框的颜色,否则不会看到边框。 此外,您还为图像的边距指定了一个极高的值,这将使
图像向右绘制90个像素,并在实际边框下方绘制239个像素!
黑色边框示例

<Border Name="imgBorder" BorderThickness="2" BorderBrush="Black">
            <Image Height="150" HorizontalAlignment="Left" Name="image1" Stretch="Fill" VerticalAlignment="Top" Width="200" Source="/ControlsBasics-WPF;component/GalleryImages/Lighthouse.jpg" ImageFailed="image1_ImageFailed" />

        </Border>

边框颜色的默认值(也称为
BorderBrush
)为空,这意味着除非指定边框的颜色,否则不会看到边框。 此外,您还为图像的边距指定了一个极高的值,这将使
图像向右绘制90个像素,并在实际边框下方绘制239个像素!
黑色边框示例

<Border Name="imgBorder" BorderThickness="2" BorderBrush="Black">
            <Image Height="150" HorizontalAlignment="Left" Name="image1" Stretch="Fill" VerticalAlignment="Top" Width="200" Source="/ControlsBasics-WPF;component/GalleryImages/Lighthouse.jpg" ImageFailed="image1_ImageFailed" />

        </Border>


不幸的是,边框不适用于图像,而是应用于不同的区域。看链接看不到图像(愚蠢的工作防火墙),但我刚刚意识到你的
边距
高得难以置信。边框将向左绘制90像素,高于图像239像素。尝试将图像的边距设置为0。不幸的是,边框不适用于图像,而是应用于其他区域。看链接看不到图像(愚蠢的工作防火墙),但我刚刚意识到你的
边距
高得难以置信。边框将向左绘制90像素,高于图像239像素。尝试将图像的边距设置为0