2014-02-12 31 views
0

我敢肯定有一个简单的答案,但我试图使用for循环制作标题。我的变量tipRate设置为.10TIPSTESP.05。 for循环在控制台应用中使用Console.WriteLine命令正常工作,但我试图在表单中执行此操作。输出应该是.10 .15 .20 .25。我不知道如何追加字符串以避免写入前一个输出。提前致谢。尝试格式输出从for循环到标签

for (tipRate = lowRate; tipRate <= highRate; tipRate += TIPSTEP) 
    lblTipHead.Text = String.Format("{0, 8}", tipRate.ToString("F")); 
+0

如果你问一个问题,然后希望帖子标记为一个回答或提供一些关于您是否解决问题的反馈。 – Tarec

回答

1
lblTipHead.Text += " " + String.Format("{0, 8}", tipRate.ToString("F")); 

此外,lblTipHead.Text = String.Empty;循环之前。但是,最好先创建一个字符串(或使用Append()方法的StringBuilder),然后连接值并将其分配给lblTipHead.Text,这将防止不必要的窗体刷新。

让我知道这是否有帮助。

0

您每次更换标签文本,使用+=代替=

lblTipHead.Text += " " + String.Format("{0, 8}", tipRate.ToString("F")); 

你也应该可能清除标签文本运行循环,只是要确定你是不是不想要的附加数据之前,这将清除标签lblTipHead.Text = ""

0

您需要使用+=将追加到的lblTipHead.Text当前值,而不是破坏性地分配给它 - 换句话说...

lblTipHead.Text += String.Format("{0, 8}", tipRate.ToString("F")); 

...而不是:

lblTipHead.Text = String.Format("{0, 8}", tipRate.ToString("F")); 

随着+=,声明翻译为:

lblTipHead.Text = lblTipHead.Text + String.Format("{0, 8}", tipRate.ToString("F"));