private void DataGrid1_ItemDataBound(obj sender,DataGridItemEventArgs e) 

 for(int i=0;i<e.Item.Cells.Count-1;i++) 
  if(e.Item.ItemType==ListItemType.EditType) 
  { 
   e.Item.Cells[i].Attributes.Add("Width", "80px") 
  } 
} 调试的时候  “System.Web.UI.WebControls.ListItemType”并不包含对“EditType”的定义

解决方案 »

  1.   

    for (int i=0;i<e.Item.Cells.Count-1;i++) 
      if(e.Item.ItemType==ListItemType.EditType) 改成下面的看看if(e.Item.ItemType==ListItemType.EditType)
       for (int i=0;i<e.Item.Cells.Count-1;i++) 
     
      

  2.   

    呵呵,就是换了一下位置,这个明显结果是一样的呀!
    因为  ListItemType里面根本找不到 EditType 的定义!哪位哥哥帮小弟看一,是怎么一回事!
      

  3.   

    e.Item.Cells[i].Attributes.Add("Width", "80px"); 是不能增加Attribute属性的.首先需要知道你需要添加属性的控件(举例 TextBox txtDesc)TextBox txt = e.Item.FindControls("txtDesc") as TextBox;txt.Attributes["width"] = "80px";
      

  4.   

    其实这里不需要添加属性,直接使用 txt.Width = new Unit(80);
      

  5.   

    对不起,理解错了, 应该为 ListItemType.EditItem
      

  6.   

    ListItemType.EditItem
    没效果!
    其实这句代码我是从CSDN里面找的,功能是,在DataGrid里,点击编辑的时候,能控制TEXTBOX的大小!平时点编辑的时候,TEXTBOX的文本框太长了
      

  7.   

    private void DataGrid1_ItemDataBound(obj sender,DataGridItemEventArgs e) 
    {
      if(e.Item.ItemType==ListItemType.EditItem) 
      {  
        for(int i=0; i<e.Item.Cells.Count-1; i++)
         {
        //e.Item.Cells[i].Attributes.Add("Width", "80px")
           TextBox txt = e.Item.FindControls("yourControlName") as TextBox;
           txt.Width = new Unit(80);
         }
      } 
    }
      

  8.   

    private void DataGrid1_ItemDataBound(obj sender,DataGridItemEventArgs e) 

     for(int i=0;i<e.Item.Cells.Count-1;i++) 
      if(e.Item.ItemType==ListItemType.EditType) 
      { 
       e.Item.Cells[i].Attributes.Add("Width", "80px") 
      } 
    } 调试的时候  “System.Web.UI.WebControls.ListItemType”并不包含对“EditType”的定义一种,是你在模板中设置好你的宽度,二种,在后台代友中循环编这每一列
    private void DataGrid1_ItemDataBound(obj sender,DataGridItemEventArgs e) 

     for(int i=0;i<e.Item.Cells.Count-1;i++) 
      if(e.Item.ItemType==ListItemType.EditType) 
      { 
       TextBox t1 =  e.Item.Cells[i].FindControls("你列的名称") as TextBox;
          t1.width = 600;  } 
    }
      

  9.   

    给分了,不过还是不行!!!调试的时候,报错!未将对象引用设置到对象的实例。 
    说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。源错误: 
    行 155:  //e.Item.Cells[i].Attributes.Add("Width", "80px");
    行 156: TextBox txt = e.Item.FindControl("返点") as TextBox;
    行 157: txt.Width = new Unit(80);
    行 158:  }
    行 159: