C# 如何将DataGridViewCell设置为自动换行?

C# 如何将DataGridViewCell设置为自动换行?,c#,winforms,C#,Winforms,我在MSN上找到的以下代码无法自动对单元格进行换行: dataGridView.Columns[0].AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells; dataGridView.Columns[0].DefaultCellStyle.WrapMode = DataGridViewTriState.True; 还有其他答案吗?您还需要设置DataGridView.AutoSizeRowsMode=DataGridView

我在MSN上找到的以下代码无法自动对单元格进行换行:

dataGridView.Columns[0].AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells;

dataGridView.Columns[0].DefaultCellStyle.WrapMode = DataGridViewTriState.True;

还有其他答案吗?

您还需要设置
DataGridView.AutoSizeRowsMode=DataGridViewAutoSizeRowsMode.AllCells
(以及您所做的)以便换行操作。

只需在代码中包含第二行即可。。。。。就像在我的代码里。。。它工作得很好

da.Fill(dtusers);

dataGridView1.DataSource = dtusers;
// dataGridView1.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
dataGridView1.DefaultCellStyle.WrapMode = DataGridViewTriState.True;
这可能对某人有所帮助

如果您需要特定于目标的列,请使用下面的内容,因为c#4.5中没有这些项目,因此该问题将不起作用


你也可以这样做

DataGridViewTextBoxColumn comments = new DataGridViewTextBoxColumn();
{
    comments.Name = "comments";
    comments.HeaderText = "Comments";
    comments.AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;
    comments.DefaultCellStyle.WrapMode = DataGridViewTriState.True;
    this.dataGridView1.Columns.Add(comments);
}

只需将这些行添加到表单\u Load方法中即可

this.dataGridView1.DefaultCellStyle.WrapMode = DataGridViewTriState.True;

我发现AutoSizeMode=DataGridViewAutoSizeColumnMode.Fill的可能重复项对我更有效
this.dataGridView1.DefaultCellStyle.WrapMode = DataGridViewTriState.True;