2013-02-27 84 views
0

我有一些字符串数组中的数据,我想在文本框中显示,格式化为整齐的列。字符串值的长度是不同的,就像名字一样,所以简单地使用“\ t”不会产生所需的效果。如何格式化文本框中的文本布局

下面是一个简单的字符串,我从我的数组写入文本框:

MyArray[thecount] = thearrayLine.GetValue(0).ToString() + " " 
    + thearrayLine.GetValue(1).ToString() + ", " 
    + thearrayLine.GetValue(2).ToString() + " " 
    + myRemainingvalues + " " 
    + thearrayLine.GetValue(4).ToString(); 
+1

你可能要考虑String.Join – Romoku 2013-02-27 00:46:29

+2

我认为你最好在网格中显示数据,而不是强迫与文本框的问题。 – 2013-02-27 01:02:26

回答

0

如果你想整齐的列,那么你需要用的布局,不依赖于字体的工作。意思是说,你不能把它全部放入文本框,并希望在屏幕上的相同位置始终显示出来。

相反,我看到三种可能性:

  1. 使用网格
  2. 使用HTML表在一排列各种文本框。
  3. 使用浮动div布局,再次为该行的各种文本框。

其中,我通常选择#1或#2。如果我的布局需要在浏览器太小的情况下掉到其他行上,我会使用#3。

无论如何,单个文本框的字体将决定其中包含的信息的间距。您必须使用等宽字体才能尝试将其拉开,但是您仍然受到每列“列”数据量不同的限制。总之,我永远不会考虑这种方法,因为有更好的控制可用的更好的方法。

+1

如果我被允许使用数据网格会更容易...但最终用途指定了一个文本框。但我发现填充字符串也起作用。用Stringvalue.PadRight(int,char)来解决它!我仍然接受你的答案克里斯,因为使用数据网格会更合乎逻辑... – 2013-02-27 02:25:59