Отрегулируйте размер текстового поля GridView EDIT - PullRequest
2 голосов
/ 06 января 2012

Я использую VS2005 C #

У меня есть GridView, и я включил редактирование строки.

Однако у меня есть несколько столбцов, которые будут иметь больший ввод, например Комментарии столбец, который будет содержать больше слов.

Есть ли способ настроить размеры текстового поля?

Ответы [ 3 ]

4 голосов
/ 06 января 2012

Если вы хотите контролировать ширину и высоту, а также другие свойства, вы можете ссылаться на TextBox в событии RowDataBound вашего GridView и устанавливать его высоту и ширину, а также устанавливать TextMode в MultiLine:

protected void RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow && e.Row.RowState == DataControlRowState.Edit)
    {
        // Comments
        TextBox comments = (TextBox)e.Row.Cells[column_index].Controls[control_index];
        comments.TextMode = TextBoxMode.MultiLine;
        comments.Height = 100;
        comments.Width = 400;
    }
}

Убедитесь, что вы ссылаетесь на строку редактирования, проверив RowState или EditIndex, и установите ваши column_index и control_index соответственно.Для BoundFields контрольный индекс обычно будет 0.

2 голосов
/ 06 января 2012

Установите ItemStyle-Width и ControlStyle-Width, и если вы хотите обернуть текст, используйте ItemStyle-Wrap.

Надеюсь, это поможет.

0 голосов
/ 14 февраля 2012

Brissles ответ правильный, но DataControlRowState может иметь несколько состояний ИЛИ вместе, поэтому вам может потребоваться проверить состояние редактирования следующим образом:

(e.Row.RowState & DataControlRowState.Edit) != 0
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...