首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

经过checkbox 获取 gridview的某个字段 求.NET 达人

2013-10-27 
通过checkbox 获取 gridview的某个字段 求.NET 达人各位达人:在gridview中 如何通过勾选checkbox 获取改行

通过checkbox 获取 gridview的某个字段 求.NET 达人
各位达人:
     在gridview中 如何通过勾选checkbox 获取改行的第二列字段
     其中:checkbox是gridview的模板列  
          具体看下图程序 gridview checkbox .net
[解决办法]
no..no.. 你应该这么写:

 protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                 DataGridDataBind();
            } 
        }


你还没有理解你出错的原因:
当你点击页面上的按钮触发B_Query_Click事件前,页面需要PostBack一次,此时会触发Page_Load事件(你可以在page_load事件上打个断点调试一下,你就全明白了). 你之前的代码,时将GridView的绑定方法DataGridDataBind放在 IsPostBack外边,导到每次page_load事件都会重新绑定一次gridview,将你之前选中的checkbox给全部清空掉了,这就是你出错的真正原因。
[解决办法]
我刚自己写了个例子试了下 没问题的呀
 protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                BindData();
            }
        }

        public void BindData()
        {
            DataTable dt = new DataTable();
            dt.Columns.Add("编号");
            dt.Columns.Add("订单号");
            dt.Columns.Add("时间");

            for (int i = 1; i < 11; i++)
            {
                DataRow dr = dt.NewRow();
                dr["编号"] = i;
                dr["订单号"] = 10000+i;
                dr["时间"] = DateTime.Now;
                dt.Rows.Add(dr);
            }

            GridView1.DataSource = dt;
            GridView1.DataBind();

        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            string[] strArr = new string[GridView1.Rows.Count];
            int j = 0;
            for (int i = 0; i < GridView1.Rows.Count; i++)
            {
                CheckBox cb = GridView1.Rows[i].FindControl("CheckBox") as CheckBox;
                if (cb != null && cb.Checked)
                {
                    strArr[j] = GridView1.Rows[i].Cells[2].Text.ToString();
                    j++;
                }
            }
            TextBox1.Text = strArr[0];


            TextBox2.Text = strArr[1];
            TextBox3.Text = strArr[2];
            TextBox4.Text = strArr[3];
        }



经过checkbox 获取 gridview的某个字段 求.NET 达人

楼主 你看你是不是哪里写得有问题

热点排行