2012-01-06 29 views
2

私はVS2005を使用しています。GridViewの編集テキストボックスのサイズ

私はGridViewを持っており、行編集を有効にしました。

しかし、より多くの単語を含むコメントのような大きな入力を持つ列があります。

テキストボックスのサイズを調整する方法はありますか?

答えて

4

あなたは幅高さを制御だけでなく、他のプロパティを使用する場合は、あなたのGridViewのRowDataBoundイベントでテキストボックスを参照し、その高さを設定し、複数行にテキストモードを設定するだけでなく、幅ができます。

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

+0

ただし、変更後にテキストボックスのサイズが変更されない – gymcode

+0

カラム/コントロールのインデックスは正しいですか? – Brissles

2

ItemStyle-WidthControlStyle-Widthを設定し、テキストをラップしたい場合はItemStyle-Wrapとしてください。

これが役に立ちます。

0

Brissles答えが正しいことになりますが、DataControlRowStateは、あなたがこのような編集状態をチェックする必要があるかもしれないので、複数の状態が一緒にOR演算持つことができます。私は私のコラムを設定している

(e.Row.RowState & DataControlRowState.Edit) != 0 
関連する問題