【发布时间】:2014-10-20 16:26:52
【问题描述】:
我正在尝试向 WPF 画布添加一个圆角矩形。我阅读了几种使用矩形的帖子方法,但它们通常是添加 UI 元素,例如使用 LineGeometry,而不是 WPF 画布上的对象。
有人可以帮助我如何处理 ArcSegment 类以将其添加到画布中,就像我添加线条一样?
例如在使用线条时:
首先我定义行参数
Line botLine = new Line();
botLine.X1 = x + width - radius;
botLine.Y1 = y;
botLine.X2 = x + radius;
botLine.Y2 = y;
然后我可以像这样将线添加到画布:
canvas1.Children.Add(botLine);
但我无法使用相同的方法添加 ArcSegment。在这种情况下会采用什么方法?还有一种方法可以将直线和弧连接到一个实体中吗?
【问题讨论】:
-
你知道有一个 Rectangle 类,它的角半径具有 RadiusX 和 RadiusY 属性吗?
-
@Clemens 是的,我知道,但是半径是固定的,我无法正确锚定矩形(或者我找不到锚定它的方法)。
-
您将设置附加属性
Canvas.Left和Canvas.Top。 -
@Clemens 在您发表评论后,我阅读了它,但是对于我想要的,最好有一个自定义路径/几何/图形,我可以使用公式或其他对象引用作为锚点。感谢您的 cmets,它们很有用,但我发现下面提出的解决方案正是我所需要的。