当前位置:编程学习 > C#/ASP.NET >>

web开发,点击GridView

点击GridView中某一行,使这行的各列数据分别显示在TextBox中
怎样取各行的数据啊
  protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
    {
        tb_id.Text = GridView1.Rows[GridView1.SelectedIndex].Cells[0].Text;
    }
点击没有反应,恳请帮忙 --------------------编程问答-------------------- 楼主要干嘛?
是要在gridview中进行编辑? --------------------编程问答--------------------   在  GridView1_RowDataBound 这个方法里来操作 --------------------编程问答--------------------
引用楼主 xiaoyangyang001 的回复:
点击GridView中某一行,使这行的各列数据分别显示在TextBox中
怎样取各行的数据啊
  protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
  {
  tb_id.Text = GridView1.Rows[GridView1.SelectedIndex].Cells[0].Text;……

你是要取各列数据,还是各行数据? --------------------编程问答-------------------- tb_id.Text = GridView1.Rows[0].Cells["列名"].Text;
--------------------编程问答--------------------

 protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
               //填写你的功能代码
             }
        }
--------------------编程问答--------------------
引用楼主 xiaoyangyang001 的回复:
点击GridView中某一行,使这行的各列数据分别显示在TextBox中
怎样取各行的数据啊
  protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
  {
  tb_id.Text = GridView1.Rows[GridView1.SelectedIndex].Cells[0].Text;……

你的赋值不该写在这个事件里面,应该写在数据的绑定事件。 --------------------编程问答-------------------- 楼主用gridview.selectItem.FindControls[""],语法楼主自己调整下 --------------------编程问答--------------------  protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        

        if (e.Row.RowType == DataControlRowType.DataRow)
        {
          
         tb_id.Text =  e.Row.Cells[2].Text.Trim() ;

         ...............
        }
    } --------------------编程问答--------------------   /// <summary>
    /// 修改
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void gdvProInfo_RowUpdating(object sender, GridViewUpdateEventArgs e)
    {
        GridViewRow rows = gdvCosTypInfo.Rows[e.RowIndex];
        string name = ((TextBox)rows.Cells[1].Controls[0]).Text;
        string ab = ((TextBox)rows.Cells[2].Controls[0]).Text;
        string iffor = ((DropDownList)rows.FindControl("ddlIFFORBID")).SelectedValue;
        string sn = ((TextBox)rows.Cells[4].Controls[0]).Text;
        int id = Int32.Parse(gdvCosTypInfo.DataKeys[e.RowIndex].Value.ToString());


   看看这段代码对你有没有帮助,这是点击每行的“编辑”按钮事先赋值。如果想要实现点击行来赋值定制GridView特性即可。 --------------------编程问答--------------------
引用 8 楼 wwfgu00ing 的回复:
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
  {
   

  if (e.Row.RowType == DataControlRowType.DataRow)
  {
   
  tb_id.Text = e.Row.Cells[2].Text.Trim() ;

 ……
这样点击也没有反应啊,以前总是在CS结构中用DataGridView,很好用,现在不太会用了
GridView这个控件还需要什么设置吗,现在我是添加的列,已经连上数据库,也能显示数据,就是点击每一行
没有反应,取不到每行的值 --------------------编程问答--------------------
引用 10 楼 xiaoyangyang001 的回复:
引用 8 楼 wwfgu00ing 的回复:
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{


if (e.Row.RowType == DataControlRowType.DataRow)
{

tb_id.Text = e.Row.Cells[2].Text.Tri……

你参照8楼的代码改了,还是没效果吗? --------------------编程问答--------------------
引用 11 楼 w3c5201314 的回复:
引用 10 楼 xiaoyangyang001 的回复:
引用 8 楼 wwfgu00ing 的回复:
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{


if (e.Row.RowType == DataControlRowType.DataRow)
{

tb_id.……
我就是参照这个改的,没有反应,我也很纳闷 --------------------编程问答--------------------
引用 12 楼 xiaoyangyang001 的回复:
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{


if (e.Row.RowType == DataControlRowT……

加断点调试一下,看这步有没有正常赋值。 --------------------编程问答--------------------
引用 13 楼 w3c5201314 的回复:
引用 12 楼 xiaoyangyang001 的回复:
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{


if (e.Row.RowType == DataControlRowT……

加断点调试一下,看这步有没有正常赋值。
加断点后,是在连接数据库后就执行到这里,并且没有赋值
我想在点击GridView某一行的时候触发一个事件,并不是这个时候 --------------------编程问答--------------------
引用 14 楼 xiaoyangyang001 的回复:
引用 13 楼 w3c5201314 的回复:
引用 12 楼 xiaoyangyang001 的回复:
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{


if (e.Row.RowType == DataControlRowT……

加断点调试一下,看这步有没有正常赋值……

触发事件的确不是在这个时候,这是数据的绑定。
但如果数据绑定没赋值,你触发事件那边肯定就没值了。
你检测一下,你绑定的列是否正确。ASP.net中的数据列是间隔的
就像1a2a3a4a5.....这种,只有12345有效,中间的a也占一列,但是对于你这里无用。 --------------------编程问答--------------------
引用 9 楼 cyljay 的回复:
  /// <summary>
    /// 修改
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void gdvProInfo_RowUpdating(object sender, GridViewUpdateEventA……


这个也试试
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,