在元素内部添加边框

本文关键字:边框 添加 内部 元素 | 更新日期: 2023-09-27 18:09:43

我想知道是否有办法在图像内添加边框。我想要一些类似于Photoshop中的"笔画"效果,当位置设置为内部时,即它必须在图像上绘制。这可能吗?

谢谢。

在元素内部添加边框

您可以将边框设置在图像的顶部:

<Grid>
 <Image/>
 <Border/>
</Grid>

如果你已经设置了一个CornerRadius,你想隐藏在角落的Image,这更复杂,但你可以设置另一个几乎相同的Border作为OpacityMask到你的Image:

<Grid>
    <!-- I used Rectangle instead of Image for the example -->
    <Rectangle Width="50" Height="50" Fill="Red">
        <Rectangle.OpacityMask>
            <VisualBrush>
                <VisualBrush.Visual>
                    <Border Width="50" Height="50" Background="Black" 
                            CornerRadius="10"/>
                </VisualBrush.Visual>
            </VisualBrush>
        </Rectangle.OpacityMask>
    </Rectangle>
</Grid>

我觉得这很简单

<Grid>
    <Image />
    <Border/>
</Grid>

是的,你可以使用多层方法!

<Grid>
    <Image />
    <Border horizontalAlignment="Stretch" verticalAlignment="Stretch" />
</Grid>

提醒你需要使用的属性,这只是一个轻量级版本!