Подтвердить что ты не робот

Как установить столбец текстовых полей DataGridView в многострочный?

Как разрешить "DataGridViewTextBoxColumn" в DataGridView поддерживает многострочное свойство?

4b9b3361

Ответ 1

Вы должны достичь этого, установив WrapMode DefaultCellStyle вашего DataGridViewTextBoxColumn на true.

Ответ 2

Я обнаружил, что вам нужно сделать две вещи, как в дизайнере, так и в текстовой ячейке, показывающей несколько строк. Как указано Тим С. Ван Харен, вам нужно установить WrapMode DefaultCellStyle вашего DataGridViewTextBoxColumn на true. И хотя это делает перенос текста, это не приводит к расширению строки, чтобы показать что-либо за пределами первой строки. В дополнение к WrapMode значение AutoSizeRowsMode DataGridView должно быть установлено на соответствующее значение перечисления DataGridViewAutoSizeRowsMode. Значение, такое как DataGridViewAutoSizeRowsMode.AllCells, позволяет ячейке расширяться вертикально и отображать весь завернутый текст.

Ответ 3

Помимо установки WrapMode для DefaultCellStyle, вы можете сделать следующее:

  • Вам нужно поймать GridView EditingControlShowing Event
  • Свойство Cast Control в EventArgs к типу, который вы хотите (т.е. текстовое поле, флажок или кнопка)
  • Используя этот литой тип, измените свойство Multiline, как показано ниже:
private void MyGridView_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
{
    TextBox TB = (TextBox)e.Control;
    TB.Multiline = true;            
}