如何在font.DrawText行下添加新行?

时间:2014-09-10 02:44:44

标签: c# .net winforms

我有这段代码:

if (this.FPS.GetFPS() >= 1)
    font.DrawText(null, String.Format("{0:N0} fps", this.FPS.GetFPS()), 5, 5, SharpDX.Color.Red);

我想添加另一个font.DrawText以显示在第一个下面,例如:

if (this.FPS.GetFPS() >= 1)
{
   font.DrawText(null, String.Format("{0:N0} fps", this.FPS.GetFPS()), 5, 5, SharpDX.Color.Red);
   font.DrawText(null, String.Format("{0:N0} time", DateTime.Now.ToString()), 5, 5, SharpDX.Color.Red);
}

但是第二个font.DrawText应该在第一个font.DrawText(null, String.Format("{0:N0} fps", this.FPS.GetFPS()), 5, 5, SharpDX.Color.Red)+ Environment.NewLine; 之下,而不是替换它。 所以我尝试在第一个添加换行符:

font.DrawText

但我得到错误:

  

错误1只有赋值,调用,递增,递减,等待和新对象表达式才能用作语句

如何制作两条{{1}}行,而第二行之间的一行呢?

1 个答案:

答案 0 :(得分:0)

您正在尝试向font.DrawText函数添加新行。而是将新行添加到String.Format()中。

font.DrawText(null, String.Format("{0:N0} fps \n {1}",
    this.FPS.GetFPS(),
    DateTime.Now.ToString()), 5, 5, SharpDX.Color.Red);

{0} = this.FPS.GetFPS()
{1} = DateTime.Now.ToString()

您可以继续添加任意数量的参数,但需要定义它们