调整GridView EDIT文本框大小

时间:2012-01-06 06:18:14

标签: c# asp.net gridview visual-studio-2005

我正在使用VS2005 C#

我有一个GridView,我启用了行编辑。

但是,我有一些列会有更大的输入,例如 Comments 列,它将包含更多单词。

有没有办法调整文本框大小?

3 个答案:

答案 0 :(得分:4)

如果要控制宽度高度以及其他属性,可以在GridView的RowDataBound事件中引用TextBox并设置其高度和宽度,并将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。

答案 1 :(得分:2)

设置ItemStyle-WidthControlStyle-Width,如果要包装文本,请使用ItemStyle-Wrap

希望这有帮助。

答案 2 :(得分:0)

Brissles的回答是正确的,但DataControlRowState可以将多个状态进行OR运算,因此您可能需要检查编辑状态,如下所示:

(e.Row.RowState & DataControlRowState.Edit) != 0