2009-10-21 159 views
0

我有一个datagridview和很少的测试箱。用户在文本框中输入详细信息,按下后输入它将添加到datagridview。现在的问题是用户将被允许的行保存到一个文本文件,但它在一个正确的格式,即不节能我得到如下:如何设置datagridview中列的宽度

Quantity Name Rate 
-------------------- 
12 wers 30 
2323 ertd 40 

但我想它保存这样

Quantity Name Rate 
-------------------- 
12  wers 30 
2323  ertd 40 

vb.net中的任何想法? PLZ帮我出

+0

请改变你的问题的标题,因为你的问题是创建一个CSV,文本文件,不设定DataGridViewColums的细胞witdh。 – 2010-07-08 08:40:27

回答

1

你想创建一个固定的列宽度文本文件,对不对?

你被一个空间都将其分离单元格的值,但是你需要进行格式化之前,对给定列相同的宽度(以字符)的细胞。

做就是COLUMN1例如:

  • 计算的最大宽度,可以适合它的所有细胞(或选择一些你知道会不会被超过的值)。
  • 使用String.Format功能键盘(左或右)的电池串与精确空间字符,你需要:

假设max column1 width = 50;得到的是一个50个字符的字符串的第一个单元格:

string cellValue = String.Format("{0, -50}", dataGridView1.Rows[0] 
              .Cells[0] 
              .Value.ToString()); 

// -50 tells the format function to return a string with a length >= 50, 
// but because you calculated this value to fit to all cells, 
// cellValue.Length is 50. 
// Spaces are added to the right,(50 instead of -50 to add spaces to the left) 
相关问题