首页 > 解决方案 > 如何在 WPF 中按给定百分比绘制圆形扇区?

问题描述

我正在尝试按给定的百分比画一个圆圈。例如,如果给定值 50,我会画一个半圆。我用这个问题的第一个解决方案尝试了它。

<Path Fill="Yellow"
            Data="M0,0 L0,-100 A100,100 0 0 1 70.7,-70.7 z" />

这对我不起作用,并在设计器中显示:

我该如何修改第一个解决方案,或者有没有更好的解决方案来为我的案例绘制一个圆圈?

标签: c#wpf

解决方案


这将起作用,但您必须计算这些70.7值,并通过绑定将它们传递给您的 XAML。

要将角度转换为 x 和 y 坐标,您需要Math.SinandMath.Cos函数,它以弧度表示角度。您可以通过乘以2*PI和除以 100% 将百分比转换为弧度角度,可以这样组合:

var x = Math.Cos(myAngle * Math.Pi / 50)
var y = Math.Sin(myAngle * Math.Pi / 50)

推荐阅读