简体   繁体   中英

C#: multiline text in DataGridView control

Is it possible for the DataGridView control to display multiline text in a cell?

I am using Visual Studio 2005 and C#.

You should set DefaultCellStyle.WrapMode property of column to DataGridViewTriState.True . After that text in cells will be displayed correctly.

Example ( DataGridView with one column):

dataGridView1.Columns[0].DefaultCellStyle.WrapMode = DataGridViewTriState.True;
dataGridView1.Rows.Add("test" + Environment.NewLine + "test");

( Environment.NewLine = \\r\\n in Windows)

dgv.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells;
dgv.Columns[1].DefaultCellStyle.WrapMode = DataGridViewTriState.True;

If you want to active the multiline text in DataGridView control then WrapMode should be true

在此处输入图片说明

在此处输入图片说明

You can change open datagridview property directly

In my case, I got it to work this way (in addition to setting both AutoSizeRowsMode to AllCells and AutoSizeColumnsMode to AllCells):

dgvTwinReverb.Columns[PEANUT_GALLERY_COLUMN].DefaultCellStyle.WrapMode = DataGridViewTriState.True;
dgvTwinReverb.Columns[PEANUT_GALLERY_COLUMN].MinimumWidth = PEANUT_GALLERY_COLUMN_DESIRED_WIDTH;
dgv.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells;
dgv.Columns[1].DefaultCellStyle.WrapMode = DataGridViewTriState.True;
1- Datagridview > properties > DataGridViewCellStyle > WrapMode=True
2 -Datagridview > properties > DataGridViewCellStyle > AutoRowSizeMode=AllCells
3- Datagridview > properties > Cloumn >(cloumn selected which you want to multiline)
      DefaultCellStyle > Alingment=NotSet and WrapMode=NotSet

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM