重新排序C#图形输出

时间:2017-11-28 16:10:44

标签: c# drawstring

我正在使用C#将数据写入打印页面,并且数据输出顺序不正确。我需要更改顺序,使其显示为1,4,2,3而不是1,2,3,4

这是我目前的语法:

//Section 1
int iAreaStartLX = iLegendsBoxX + 8;
int iAreaStartLY = iLegendsBoxY + 8;
int iTextXPos = iAreaStartLX + 50;
int iTriStartLX = iAreaStartLX + 25;
Point[] AreaStartPts = new Point[3];
AreaStartPts[0] = new Point(iTriStartLX, iAreaStartLY);
AreaStartPts[1] = new Point(iTriStartLX + 20, iAreaStartLY);
AreaStartPts[2] = new Point(iTriStartLX + 10, iAreaStartLY + 18);
e.Graphics.FillPolygon(StartSahpeBrush, AreaStartPts);
e.Graphics.DrawPolygon(Pens.Red, AreaStartPts);
e.Graphics.DrawString("Data For Point 1", new Font("Times New Roman", 10), new SolidBrush(Color.Black), iTextXPos, 105);

//Section 2
int iLNStartLX = iAreaStartLX;
int iLNStartLY = iAreaStartLY + 25;
Point point1 = new Point(iLNStartLX, iLNStartLY + 10);
Point point2 = new Point(iLNStartLX + 45, iLNStartLY + 10);
e.Graphics.DrawLine(RedDashPen, point1, point2);
e.Graphics.DrawString("Data For Point 2", new Font("Times New Roman", 10), new SolidBrush(Color.Black), iTextXPos, 130);

//Section 3
int iLNEndLX = iAreaStartLX;
int iLNEndLY = iLNStartLY + 25;
point1 = new Point(iLNEndLX, iLNEndLY + 10);
point2 = new Point(iLNEndLX + 45, iLNEndLY + 10);
e.Graphics.DrawLine(RedPen, point1, point2);
e.Graphics.DrawString("Data For Point 3", new Font("Times New Roman", 10), new SolidBrush(Color.Black), iTextXPos, 155);

//Section 4
int iAreaEndLY = iLegendsBoxY + 85;
int iTextYPos = iAreaStartLX + 50;
int iTriEndLX = iAreaStartLX + 25;
AreaStartPts[0] = new Point(iTriEndLX, iAreaEndLY);
AreaStartPts[1] = new Point(iTriEndLX + 20, iAreaEndLY);
AreaStartPts[2] = new Point(iTriEndLX + 10, iAreaEndLY + 18);
e.Graphics.DrawPolygon(RedDottedPen, AreaStartPts);
e.Graphics.DrawString("Data For Point 4", new Font("Times New Roman", 10), new SolidBrush(Color.Black), iTextXPos, 180);

现在我当然直接在//Section 4下做了明显的复制/粘贴//Section 1,但输出顺序相同。更改这些.DrawString在页面上显示的顺序的正确方法是什么?

0 个答案:

没有答案