如何在wpf中的图像控件周围添加边框矩形



我试图添加包装的<带有<边界

我添加了

<Border BorderThickness="1">

</Border>

然后尝试将<图片如下:

<Border BorderThickness="1">
<Image x:Name="Img" HorizontalAlignment="Left" Height="233" Margin="467,54,0,0" VerticalAlignment="Top" Width="272" RenderTransformOrigin="0.5,0.5">
<Image.RenderTransform>
<TransformGroup>
<ScaleTransform/>
<SkewTransform AngleY="0.704"/>
<RotateTransform/>
<TranslateTransform Y="0.614"/>
</TransformGroup>
</Image.RenderTransform>
</Image>
</Border> 

但在运行应用程序时,它什么也不做。

在主窗口上的设计器中,我有一个StackPanel,然后它上的其他控件也是图像控件。

我想向用户展示有一个像pictureBox这样的图像控件,问题是当运行程序时,图像仍然是空的,没有任何东西表明有图像控件。这就是为什么我想在图像边界上画一个矩形。

您需要为您的Border选择一个笔刷。

<Border BorderThickness="1" BorderBrush="Black">
<Image x:Name="Img" HorizontalAlignment="Left" Height="233" Margin="467,54,0,0" VerticalAlignment="Top" Width="272" RenderTransformOrigin="0.5,0.5">
<Image.RenderTransform>
<TransformGroup>
<ScaleTransform/>
<SkewTransform AngleY="0.704"/>
<RotateTransform/>
<TranslateTransform Y="0.614"/>
</TransformGroup>
</Image.RenderTransform>
</Image>
</Border>

实际上,您应用的方法非常接近,因为图片将位于边框中,因此调整边框大小而不是调整图片大小更合乎逻辑。如果你做一个像下面这样的应用程序,它会为你工作。

<Border BorderThickness="2"
BorderBrush="Black"
VerticalAlignment="Center"
HorizontalAlignment="Center"
Height="128" 
Width="128">
<Image HorizontalAlignment="Stretch" 
VerticalAlignment="Stretch" 
Stretch="Fill"
Source="/Images/antenna.png"/>
</Border>

在你的应用程序中有这样的东西就足够了。

<Border BorderThickness="3" BorderBrush="Red" Height="233" Width="272">
<Image x:Name="Img" HorizontalAlignment="Left" Margin="467,54,0,0" VerticalAlignment="Top" RenderTransformOrigin="0.5,0.5">
<Image.RenderTransform>
<TransformGroup>
<ScaleTransform/>
<SkewTransform AngleY="0.704"/>
<RotateTransform/>
<TranslateTransform Y="0.614"/>
</TransformGroup>
</Image.RenderTransform>
</Image>
</Border>

最新更新