Fengzhimei@Dot.Net
Designing My Colorful Dream
    By default, the control that is provided in a DataGrid's Edit Mode is the TextBox control, unless of course you are using EditItemTemplates, which is left for another discussion. In Edit mode, the TextBox is pretty wide. What if you want to make it narrower? Change the font with a stylesheet? Set it so it can only be a certain length? By coding the DataGrid's PreRender event, you can accomplish all this, and anything else you want to do, with your control. This example gets the textbox control located in the datagrid's second cell, then sets its Width and Maxlength properties respectively. Simply access the control via the ordinal number of the cell that contains it, cast it to your desired control, then modify its properties like normal.
1private void DataGrid1_PreRender(object sender, System.EventArgs e)
2{
3 if (DataGrid1.EditItemIndex > -1)
4 {
5  TextBox objTextBox = DataGrid1.Items[DataGrid1.EditItemIndex].
6   Cells[1].Controls[0] as TextBox;
7  objTextBox.Width = Unit.Parse("50px");
8 }
9}

    Hope this is just what you want
posted on 2004-06-10 01:34  fengzhimei  阅读(1014)  评论(2编辑  收藏  举报