首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用作矩形填充的DrawingBrush

用作矩形填充的DrawingBrush
EN

Stack Overflow用户
提问于 2010-02-25 01:56:05
回答 1查看 3.1K关注 0票数 2

我有下面关于DrawingBrush的定义。这是我在网上找到的一个例子,它画了一个箭头:

代码语言:javascript
复制
<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>

现在,我在画布上创建了一个矩形,并将该矩形的DrawingBrush属性设置为上面的填充:

代码语言:javascript
复制
<Rectangle Fill="{DynamicResource arrow}" Stroke="#FF000000" Width="Auto" Height="Auto" Canvas.Top="339.815" Canvas.Left="112.037" x:Name="arrowRectangle"/>

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

似乎我误解了DrawingBrush的工作原理。我只是在寻找一种显示箭头的方法。我是否必须使用图像而不是DrawingBrush?我首先寻找的是DrawingBrush,因为我认为对于像箭头这样简单的东西,它会工作得很好。

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-02-25 02:07:43

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

代码语言:javascript
复制
<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" ...
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2328242

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档