WinForm DataGridView多行

时间:2016-07-18 17:36:55

标签: c# winforms datagridview

这是我的DataGridView。

enter image description here

我想制作多行。

From: 1abcdefghijklmno

To:   1abcdefghijklmno
      pqrstuvwxyzabcde
      fghijklmnopqrstu
      vwxyz

我该怎么做?

我的代码:

    private void Form1_Load(object sender, EventArgs e)
    {
        var myArray1 = new string[] { "1abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz", "2abc" };
        var myArray2 = new string[] { "3abc", "4abc" };
        var myArray = new string[][] { myArray1, myArray2 };

        foreach( var x in myArray )
            dataGridView1.Rows.Add(x);
    }

和另一个代码页.. DataGridView部分

        // dataGridView1
        dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
        this.dataGridView1.DefaultCellStyle = dataGridViewCellStyle3;
        dataGridViewCellStyle4.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
        this.dataGridView1.RowsDefaultCellStyle = dataGridViewCellStyle4;
        this.dataGridView1.RowTemplate.DefaultCellStyle.WrapMode = System.Windows.Forms.DataGridViewTriState.True;

我想我尽我所能。

列部分1

        // Column1

        dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
        this.Column1.DefaultCellStyle = dataGridViewCellStyle1;

列部分2

        // Column2

        dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
        this.Column2.DefaultCellStyle = dataGridViewCellStyle2;

此致

1 个答案:

答案 0 :(得分:1)

这两行应该可以解决问题:

dataGridView1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells;
dataGridView1.RowsDefaultCellStyle.WrapMode = DataGridViewTriState.True;

但要注意,网格将新单词分解为新行,而不是单个单词。所以如果你写aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,你就不会得到一个包装。但如果你写aaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaa,你会得到一个包装。