我正在创建一个用户控件,它创建一个双数组表。我能够绘制它们,但我不知道如何对齐这些值。
示例:我的数据看起来像
double[] data = new double[]
{
-13.5,
-8.5,
-3.5,
0,
3.5,
8.5,
13.5
};
所以我希望当我绘制这些值时,它们应该对齐(右对齐),以便所有值的点都出现在同一个位置。
这是我正在使用的代码:
private void DrawTable()
{
_format.Alignment = StringAlignment.Far;
_format.LineAlignment = StringAlignment.Far;
int yPos = 2;
RectangleF rect = RectangleF.Empty;
foreach (var item in Data)
{
string str = item.ToString("F3");
str = string.Format("{0}dB", str);
str = string.Format("{0,10}",str);
SizeF size = _gBmp.MeasureString(str, Font);
rect.X = 5;
rect.Y = yPos;
rect.Width = size.Width;
rect.Height = size.Height;
_gBmp.DrawString(str, Font, _textBrush, rect, _format);
yPos += 20;
}
}