gpt4 book ai didi

c# - 用作矩形填充的 DrawingBrush

转载 作者:太空宇宙 更新时间:2023-11-03 11:50:08 25 4
gpt4 key购买 nike

我对 DrawingBrush 有以下定义。这是我在网上找到的一个画箭头的例子:

<DrawingBrush x:Key="arrow" Stretch="Uniform">
<DrawingBrush.Drawing>
<DrawingGroup>
<DrawingGroup.Children>
<GeometryDrawing Brush="#FFFFFFFF" Geometry="F1 M 358.447,332.449L 358.447,319.664L 380.875,319.664L 380.798,309.408L 407.698,326.505L 381.068,343.628L 380.982,332.45L 358.447,332.449 Z "/>
</DrawingGroup.Children>
</DrawingGroup>
</DrawingBrush.Drawing>
</DrawingBrush>

现在,我在 Canvas 上创建了一个矩形,并将矩形的 Fill 属性设置为上面的 DrawingBrush:

<Rectangle Fill="{DynamicResource arrow}" Stroke="#FF000000" Width="Auto" Height="Auto" Canvas.Top="339.815" Canvas.Left="112.037" x:Name="arrowRectangle"/>

将矩形的宽度和高度设置为“自动”,我希望矩形调整大小以自动显示绘制的箭头。但是,似乎我需要明确设置宽度/高度才能看到任何内容。如果我将宽度/高度保留为自动,则矩形将显示为单个点,就好像宽度 = 高度 = 0 一样。

看来我误解了 DrawingBrush 的工作原理。我只是在寻找一种显示箭头的方法。我必须使用 Image 而不是 DrawingBrush 吗?我首先寻找 DrawingBrush,因为我认为像箭头这样简单的东西就可以正常工作。

谢谢。

最佳答案

DrawingBrush 只是另一个画笔,它没有布局大小调整功能,因此它只会尝试填充调用它的控件区域。所以你不能指望画笔控制矩形大小。但是您可以使用具有此几何图形的路径作为 DataProperty

<Path Fill="Red" Data="F1 M 358.447,332.449L 358.447,319.664L 380.875,319.664L 380.798,309.408L 407.698,326.505L 381.068,343.628L 380.982,332.45L 358.447,332.449 Z " Stretch="Uniform" ...

关于c# - 用作矩形填充的 DrawingBrush,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2328242/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com