假设GridView中有3条记录,有编辑和删除功能,第一条点编辑,第一条记录出现编辑状态,点其他两条的删除可以把那两条删除掉,有什么好的技巧可以编辑这条记录的时候不让其他两条有删除的功能呢???

解决方案 »

  1.   

    进入编辑后,把另2个删除的按钮变成enable=false;
      

  2.   

    低价转让:中#美#爱#梯#科技.Net软件工程师培训课程内容(共35G),声音清晰,课程完整!
    需要这个培训视频的朋友请联系 QQ 936652114
      

  3.   

    不行啊,代码在下面,我不知道是不是我写得不对
       protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
        {
            foreach (GridViewRow gvr in GridView1.Rows)
            {
                LinkButton lb_del = (LinkButton)gvr.FindControl("LinkButton1");
                lb_del.Enabled = false;
            }
      

  4.   

      protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e) 
        { 
            foreach (GridViewRow gvr in GridView1.Rows) 
            { 
                if(gvr.RowType == DataControlRowType.Rows)
                {
                   LinkButton lb_del = (LinkButton)gvr.FindControl("LinkButton1"); 
                   lb_del.Enabled = false; 
                }
            }
      

  5.   

    请问DataControlRowType.Rows中Rows是什么意思,我点不出来,就只有个DataRow像点
      

  6.   

    同下面这样写不行吗?   protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                Button btn = (Button)e.Row.FindControl ("btnDelete");
                if (e.Row.RowState == DataControlRowState.Edit || ((int)e.Row.RowState) == 5)//注意这句
                {
                    btn.Enabled= false;
                }
            }
           }
      

  7.   

    谢谢楼上的,我要的效果是整个GridView里编辑时所有的删除按钮都不可点
      

  8.   

    8楼的代码基础上加个foreach就行了嘛
      

  9.   

    编译错误 
    说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。 编译器错误信息: CS0117: “System.Web.UI.WebControls.GridViewEditEventArgs”并不包含“Row”的定义源错误: 行 211:        foreach (GridViewRow gvr in GridView1.Rows)
    行 212:        {
    行 213:            if (e.Row.RowType == DataControlRowType.DataRow)行 214:            {
    行 215:                Button btn = (Button)e.Row.FindControl("btnDelete");
     
      

  10.   

    试试这个
     protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
        {
            GridView gView = sender as GridView;
            foreach (GridViewRow row in gView.Rows)
            {
                if (gView.Rows[e.NewEditIndex].RowType == DataControlRowType.DataRow)
                {
                    Button btn = (Button)row.FindControl("btnDelete");
                    if (btn != null)
                        btn.Enabled = false;
                }
            }
        }
      

  11.   

    如果你是LinkButton就把Button换成LinkButton
      

  12.   

    这个应该是正确的,楼主你注意这是在RowDataBound事件里,我估计你是在GridView1_RowEditing事件里测试的