程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> GridView根據CheckBox的狀態讀取相應ID

GridView根據CheckBox的狀態讀取相應ID

編輯:.NET實例教程

protected ArrayList CheckedItems
    ...{
        get
        ...{
            return (ViewState["CheckedID"] != null) ? (ArrayList)VIEwState["CheckedID"] : null;
        }
        set
        ...{
            VIEwState["CheckedID"] = value;
        }
    }



    protected void btnPass_Click(object sender, EventArgs e)
    ...{
        DataAccess.BLL.Product bll = new DataAccess.BLL.Product();
        DataAccess.Model.Product model = new DataAccess.Model.Product();

        GetSelected();
  string id = string.Empty;
        foreach (object productID in this.CheckedItems)
        ...{
            model = bll.GetModel(int.Parse(productID.ToString()));
            model.State = 1;
            bll.Update(model);
        }
        DataAccess.MessageBox.ReLoad();

    }
    protected void gvProduct_RowDataBound(object sender, GridVIEwRowEventArgs e)
    ...{
        //回顯之前選中的情況
        if (e.Row.RowType == DataControlRowType.DataRow && this.CheckedItems != null)
        ...{
            DataRowView row = e.Row.DataItem as DataRowVIEw;
            CheckBox cb = e.Row.Cells[1].FindControl("cbProduct") as CheckBox;
            if (this.CheckedItems.Contains(row["ProductID"].ToString()))
                cb.Checked = true;
            else
               cb.Checked = false;
       }

    }
    protected void gvProduct_DataBinding(object sender, EventArgs e)
    ...{
        GetSelected();
    }

    protected void GetSelected()
    ...{
        ArrayList chekcedItems = null;
        if (this.CheckedItems == null)
            chekcedItems = new ArrayList();
        else
            chekcedItems = this.CheckedItems;

        foreach (GridVIEwRow gvr in gvProduct.Rows)
        ...{
            if (gvr.RowType == DataControlRowType.DataRow)
    ...{
                string id = gvr.Cells[0].Text;
                CheckBox cb = gvr.FindControl("cbProduct") as CheckBox;
                if (chekcedItems.Contains(id) && !cb.Checked)
                    chekcedItems.Remove(id);
                if (!chekcedItems.Contains(id) && cb.Checked)
                    chekcedItems.Add(id);
            }
            
        }
        this.CheckedItems = chekcedItems;
    } 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved