有一个页面index.apsx,有N多文本框,还有一个GridView,在页面加载的时候从数据库检索数据绑定到GridView.
然后通过双击GridView上的某一行则把这一行的数据获取出来赋值给文本框.
实现此功能怎么做,请大虾们帮忙,急.........

解决方案 »

  1.   

        protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                //加上双击事件
                e.Row.Attributes.Add("ondbclick", "你的script");
            }
        }
      

  2.   

    简单来说就是通过javascript脚本来实现。
      

  3.   

    但是GridView中显示的数据不是数据库中完整的数据,而通过双击GridView要把所有的数据都获取出来,怎么做
      

  4.   

    但是GridView上显示的数据不是完整的数据,只是一部分.而通过双击GridView是把数据完整的提取出来赋值给文本框,以便修改.我是这个意思
      

  5.   

    在gv中放一个button,然后点击button的时候绑定到对应的textbox中去
      

  6.   

    如果直接表示的数据不全,可将需要的数据用隐藏控件绑定到对应行里
    至于id 你点中的时候 在js里传个this,
    你再看看源文件,很容易找出同行控件id的规律的
      

  7.   

    1.假設ID為你表的主鍵,則設置GridView的DataKeyNames="ID" 
    2.
      protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                e.Row.Attributes.Add("ondbclick","FillData('" + GridView1.DataKeys[e.Row.RowIndex].Values[0]
                        + "')";
                }
            }
        }
    3.函數寫你的FillData函數(提示:可以通過ajax實現,通過id返回一個DataTable,然後根據返回的DataTable填充相應的文本框)
      

  8.   

    剛才代碼多了閣}
    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) 
        { 
            if (e.Row.RowType == DataControlRowType.DataRow) 
            { 
                e.Row.Attributes.Add("ondbclick","FillData('" + GridView1.DataKeys[e.Row.RowIndex].Values[0] 
                        + "')"; 
            } 
        } 
      

  9.   

    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)  
        {  
            if (e.Row.RowType == DataControlRowType.DataRow)  
            {  
                e.Row.Attributes.Add("ondbclick","FillData('" + GridView1.DataKeys[e.Row.RowIndex].Values[0]  
                        + "')");  
            }  
        }  
      

  10.   

     protected override void Render(HtmlTextWriter writer)
        {
            foreach (GridViewRow row in GridView1.Rows)
            {            if (row.RowType == DataControlRowType.DataRow)
                {                row.Attributes["ondblclick"] = ClientScript.GetPostBackEventReference(GridView1, "Edit$" + row.RowIndex.ToString(), true);
                    row.Attributes["style"] = "cursor:pointer";
                    row.Attributes["title"] = "双击编辑";
                }
            }        base.Render(writer);
        }
      protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
        {
            //在这个事件中进行处理 应该灭有问题吧 你可以取得 e.NewEditIndex; 其他的就可以都得到了 ,
            //然后进行TextBox.Text=GridView1 .Rows [e.NewEditIndex].Cells [1].Text ;没有问题吧 
            //给分吧朋友
            
            
        }