http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dv_vstechart/html/vbtchTopQuestionsAboutASPNETDataGridServerControl.asp

解决方案 »

  1.   

    private void DGrid_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
    {
    foreach (TableCell tc in DGrid.Items[DGrid.EditItemIndex].Cells)
    {
         foreach (Control c in tc.Controls)  //or use tc.Controls[0]
    {
    if (c is TextBox)
    {
    TextBox tb = (TextBox)c;
    tb.Columns = 8;  //设定文本框宽度
    tb.Style["color"] = "red";
    tb.Attributes.Add("onkeydown", "if(event.keyCode==13) event.keyCode=9");
    }
    }
    }}
      

  2.   

    ((TextBox)(mygrid.Items[e.EditItemIndex].Cells[2].Controls[0])).Width = Unit.Percentage(99);
    上面是设置百分比。基本如此。
      

  3.   

    在模板列里只有Columns[0].....等等的布局选项里可以设置宽度,该设置好像只是设置列宽,处于编辑模式时,列宽就守编辑宽的影响,并不能设置编辑框的宽度
      

  4.   

    谁能告诉我,如何在页面编辑时设置DataGrid处于编辑模式时每列编辑框的宽度,谢谢!
      

  5.   

    在模板列里只有Columns[0].....等等的布局选项里可以设置宽度,该设置好像只是设置列宽,处于编辑模式时,列宽就守编辑宽的影响,并不能设置编辑框的宽度
    ---------------------------------------------使用模板列,你必须在每个要显示的列里面插入文本框或其他控件,插入的时候设置它的宽度就可以了。