可编辑?什么意思?
动态改变其样式?
还是能接受输入数据
如果,能接受数据,只要不把DataGrid的 Enable设成false就可以了

解决方案 »

  1.   

    锁定一个单元格????dataGrid.TableStyles[n].GridColumnStyles[m].Readonly= false | true //控制一列可否编辑
      

  2.   

    在DataGrid的数据邦定时给单元格Atrributes.Add("ondbclick","mFunction(this)");Atrributes.Add("onblur","mFunction2(this)");
    在页面写script
    function mFunction(obj)
    {
    var oChild = obj.children(0);
    var mValue = oChild.value;
    obj.removeChild(oChild);
    var mChild = obj.createElement('Input');
    mChild.type = 'text';//这一句不知行不行
    mChild.value = mValue;
    obj.insertBefore(mChild);}
    function mFunction2(obj)
    {
    var oChild = obj.children(0);
    var nValue = oChild.value;
    obj.removeChild(oChild);
    var nChild = obj.createElement('div');
    nChild.innerText = nValue;
    obj.insertBefore(nChild);}以上没有通过测试,不知行不行。
    而且没有数据更新,你要遍历datagrid的单元格,来更新数据,不过你也可以用一个<input type='hidden'>来保存你更新了那些单元格,这样就不要遍历了
      

  3.   

    mChild.type = 'text';//这一句不知行不行
    这一句是正确的,不过不写也一样
      

  4.   

    控制一列可否编辑1,在DataGrid的第一列添加一个编辑列,并将此列的Visible属性设为false,使这个列不显示出来。
    2,在DataGrid1_ItemDataBound事件中加上如下代码:
    private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
       if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
       {
          e.Item.Attributes.Add("ondblclick",Page.GetPostBackClientHyperlink((Button)e.Item.Cells[0].Controls[0],"")) ;  //非正在编辑的项双击后模拟点击隐藏的编辑按钮。
       }
       if(e.Item.ItemType == ListItemType.EditItem)
       {
          e.Item.Attributes.Add("ondblclick",Page.GetPostBackClientHyperlink((Button)e.Item.Cells[0].Controls[2],"")) ;  //正在编辑的项双击后模拟点击隐藏的更新按钮。
       }
    }