如果我有一个表有二列,我想显示在datagrid中,第一列不可编辑,第二列可以编辑,那我是不是第一列用绑定列,第二列使用模板列?
但是我现在选择编辑按钮,第一列和第二列都的该行都变成了TEXTBOX了吗? 我想让第一列不变可以吗?我现在第一列使用的是绑定列.
还有就是模板列的数据绑定必须打开HTML原代码来编辑吗?
多谢

解决方案 »

  1.   

    把你的第一例设 为 只读     ReadOnly=True 就可以了
      

  2.   

    先行谢过 yefeihaha() ,我想再问一下,如果当绑定列的 ReadOnly为false时,进入编辑时,它也显示为textbox,
    我是不是也可以获得它里面的值,从而用绑定列也可以达到编辑的目的?还有就是上面的模板列的数据绑定必须打开HTML原代码来编辑吗?
      

  3.   

    BoundColumn.ReadOnly="true"已经不能编辑了。可以同过设计器完成。
    DataGrid>>右键〉〉属性生成器〉〉添加模版列〉〉既可。
      

  4.   

    可以这样: 都用模板列.但第一列的编辑模板列用Label,第二列的编辑模板列用TextBox.
    模板列可以自定义的.随便用什么控件,如果编辑就用TextBox,如果不想编辑就用Label
      

  5.   

    to  renyu732(Sysinfo)
    :)模版列我一直是有添加的,只是今天我由于要编辑,往模板列里添加了TEXTBOX 和LABEL,我没注意到TEXT属性,绑定数据时是直接在HTML源里加上
    Text='<%#DataBinder.Eval(Container,"DataItem....")%>'绑定列本身就提供了编辑功能
    现在我最疑惑的就是这:因为当使用绑定列不指定只读时, 编辑完以后在更新时就取不到该值,显示为空,只读时没有这个情况e.Item.Cells[1].Text;
    原本我想以绑定列来代替模板列的,现在看来好象不行~~