我想在编辑状态中,其中某列 不能修改即是readyonly=true,
请问如何实现,在线等

解决方案 »

  1.   

    绑定gridview中写代码。设置为 enable = false
      

  2.   

    将这个列转成模板列,在<EditItemTemplate></EditItemTemplate>这个标签中的TextBox改成Lable不就成了吗
      

  3.   

    通过模板列,绑定textbox实现修改
      

  4.   

       编辑列 把readyonly的属性改为true了就不能编辑了···
      

  5.   


      编辑列 把readyonly的属性改为true
      

  6.   

    把该列的allowedit属性设置为false
      

  7.   

     编辑列 把readyonly的属性改为true 
      

  8.   


    enable = false模板列
      

  9.   

    使用模板列
    Eval("")绑定
    编辑模板用Lable
      

  10.   

    --激活编辑状态在GridView1_RowEditing事件下写下面的代码:GridView1.EditIndex = e.NewEditIndex; 
    --编辑数据在GridView1_RowUpdating事件下写下面的代码:sqlcon = new SqlConnection(strCon); 
    string sqlstr = "update 表 set 字段1='" 
    + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[1].Controls[0])).Text.ToString().Trim() + "',字段2='" 
    + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[2].Controls[0])).Text.ToString().Trim() + "',字段3='" 
    + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[3].Controls[0])).Text.ToString().Trim() + "' where id='" 
    + GridView1.DataKeys[e.RowIndex].Value.ToString() + "'"; 
    sqlcom=new SqlCommand(sqlstr,sqlcon); 
    sqlcon.Open(); 
    sqlcom.ExecuteNonQuery(); 
    sqlcon.Close(); 
    GridView1.EditIndex = -1; 
    bind(); 
    --取消编辑的话在GridView1_RowCancelingEdit事件下写下面的代码: 
    GridView1.EditIndex = -1; 
    bind(); 
    //绑定 
    public void bind() 

    string sqlstr = "select * from 表"; 
    sqlcon = new SqlConnection(strCon); 
    SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon); 
    DataSet myds = new DataSet(); 
    sqlcon.Open(); 
    myda.Fill(myds, "表"); 
    GridView1.DataSource = myds; 
    GridView1.DataKeyNames = new string[] { "id" };//主键 
    GridView1.DataBind(); 
    sqlcon.Close(); 
    }
      

  11.   

    直接判断权限可不可以更改撒,
    如果不可以更改,直接把控件的Enable属性改为false就行了撒
    个人认为还是用模板列好些,用Label编辑状态也只能看
    你这种情况应该用个TextBox吧,判断一下权限后改属性
      

  12.   

        /// <summary>
        /// 锁定行
        /// </summary>
        /// <param name="id">第几行</param>
        /// <param name="type">是否解锁  1 是 0 否</param>
        private void ControlEnabled(int id, int type)
        {
            if (type == 1)
            {
                ((TextBox)gvHomePage.Rows[id].FindControl("txtUF_HomeContent_Title")).Enabled = true;
                ((TextBox)gvHomePage.Rows[id].FindControl("txtUF_HomeContent_Url")).Enabled = true;
                //((LinkButton)gvHomePage.Rows[id].FindControl("LinkButton1")).Enabled = true;
                ((LinkButton)gvHomePage.Rows[id].FindControl("LinkButton2")).Enabled = true;
                ((LinkButton)gvHomePage.Rows[id].FindControl("LinkButton3")).Enabled = true;
                ((LinkButton)gvHomePage.Rows[id].FindControl("lbtn0")).Enabled = true;
                ((LinkButton)gvHomePage.Rows[id].FindControl("lbtn1")).Enabled = true;
                ((LinkButton)gvHomePage.Rows[id].FindControl("lbtn2")).Enabled = true;
            }
            else if (type == 0)
            {
                ((TextBox)gvHomePage.Rows[id].FindControl("txtUF_HomeContent_Title")).Enabled = false;
                ((TextBox)gvHomePage.Rows[id].FindControl("txtUF_HomeContent_Url")).Enabled = false;
                //((LinkButton)gvHomePage.Rows[id].FindControl("LinkButton1")).Enabled = false;
                ((LinkButton)gvHomePage.Rows[id].FindControl("LinkButton2")).Enabled = false;
                ((LinkButton)gvHomePage.Rows[id].FindControl("LinkButton3")).Enabled = false;
                ((LinkButton)gvHomePage.Rows[id].FindControl("lbtn0")).Enabled = false;
                ((LinkButton)gvHomePage.Rows[id].FindControl("lbtn1")).Enabled = false;
                ((LinkButton)gvHomePage.Rows[id].FindControl("lbtn2")).Enabled = false;
            }
        }    protected void gvHomePage_DataBound(object sender, EventArgs e)
        {
            for (int i = 0; i < this.gvHomePage.Rows.Count; i++)
            {
                ((TextBox)gvHomePage.Rows[i].FindControl("txtUF_HomeContent_Title")).MaxLength = zf_num;
                ControlEnabled(i, 0);//锁定行
            }
        }
      

  13.   

    用模版列啊,在编辑的时候把那个TextBox换成Label就行了