public static void BindDG(GridView dg, string id, string strSql, string Tname)
    {
        SqlConnection conn = DBCon();
        SqlDataAdapter sda = new SqlDataAdapter(strSql, conn);
        DataSet ds = new DataSet();
        sda.Fill(ds, Tname);
        dg.DataSource = ds.Tables[Tname];
        dg.DataKeyNames = new string[] { id };
        dg.DataBind();
    }public void gvExaminationInfo_Bind()
    {
        string strsql = "select * from exampaper order by 试卷ID desc";
        BaseClass.BindDG(gvExaminationInfo, "试卷ID", strsql, "SingleChooseInfo");
        SqlConnection conn = BaseClass.DBCon();
        conn.Open();
        SqlCommand cmd = new SqlCommand("select * from exampaper", conn);
        SqlDataReader sdr = cmd.ExecuteReader();
        this.ddlEkm.DataSource = sdr;
        this.ddlEkm.DataTextField = "试卷ID";
        this.ddlEkm.DataValueField = "试卷ID";
        this.ddlEkm.DataBind();
        conn.Close();
    }
    protected void gvExaminationInfo_PageIndexChanging(object sender, GridViewPageEventArgs e)
    {
        gvExaminationInfo.PageIndex = e.NewPageIndex;
        gvExaminationInfo_Bind();
    }
    protected void gvExaminationInfo_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {
        int 试卷ID = (int)gvExaminationInfo.DataKeys[e.RowIndex].Value;//获取GridView主键的值
        string strsql = "delete from exampaper where 试卷ID ='" + 试卷ID + "'";
        BaseClass.OperateData(strsql);
        gvExaminationInfo_Bind();
    }
    protected void btnSerch_Click(object sender, EventArgs e)
    {
        lbltype.Text = ddlEkm.SelectedItem.Text.Trim();
        string strsql = "select * from exampaper where 试卷ID ='" + ddlEkm.SelectedItem.Text.Trim() + "'";
        BaseClass.BindDG(gvExaminationInfo, "试卷ID", strsql, "SingleChooseInfo");
        SqlConnection conn = BaseClass.DBCon();
        conn.Open();
        SqlCommand cmd = new SqlCommand("select * from exampaper", conn);
        SqlDataReader sdr = cmd.ExecuteReader();
        this.ddlEkm.DataSource = sdr;
        this.ddlEkm.DataTextField = "试卷ID";
        this.ddlEkm.DataValueField = "试卷ID";
        this.ddlEkm.DataBind();
        conn.Close();
    }

解决方案 »

  1.   

    public static void BindDG(GridView dg, string id, string strSql, string Tname)
        {
            SqlConnection conn = DBCon();定义一个数据库连接
            SqlDataAdapter sda = new SqlDataAdapter(strSql, conn);定义一个数据适配器
            DataSet ds = new DataSet();
            sda.Fill(ds, Tname);执行strsql语句,并把结果把在结果集ds,
            dg.DataSource = ds.Tables[Tname];把结果集绑定到dg
            dg.DataKeyNames = new string[] { id };
            dg.DataBind();
        }public void gvExaminationInfo_Bind()
        {
            string strsql = "select * from exampaper order by 试卷ID desc";
            BaseClass.BindDG(gvExaminationInfo, "试卷ID", strsql, "SingleChooseInfo");
            SqlConnection conn = BaseClass.DBCon();
            conn.Open();
            SqlCommand cmd = new SqlCommand("select * from exampaper", conn);
            SqlDataReader sdr = cmd.ExecuteReader();
            this.ddlEkm.DataSource = sdr;
            this.ddlEkm.DataTextField = "试卷ID";
            this.ddlEkm.DataValueField = "试卷ID";
            this.ddlEkm.DataBind();
            conn.Close();
        }
        protected void gvExaminationInfo_PageIndexChanging(object sender, GridViewPageEventArgs e)
        {
            gvExaminationInfo.PageIndex = e.NewPageIndex; 这个应该是分页控件,翻页时的事件
            gvExaminationInfo_Bind();
        }
        protected void gvExaminationInfo_RowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            int 试卷ID = (int)gvExaminationInfo.DataKeys[e.RowIndex].Value;//获取GridView主键的值
            string strsql = "delete from exampaper where 试卷ID ='" + 试卷ID + "'";
            BaseClass.OperateData(strsql);  ??执行删除操作
            gvExaminationInfo_Bind();删除后重新绑定,也就是刷新
        }
        protected void btnSerch_Click(object sender, EventArgs e)
        {
            lbltype.Text = ddlEkm.SelectedItem.Text.Trim();
            string strsql = "select * from exampaper where 试卷ID ='" + ddlEkm.SelectedItem.Text.Trim() + "'";
            BaseClass.BindDG(gvExaminationInfo, "试卷ID", strsql, "SingleChooseInfo");
            SqlConnection conn = BaseClass.DBCon();
            conn.Open();打开数据库连接
            SqlCommand cmd = new SqlCommand("select * from exampaper", conn);
            SqlDataReader sdr = cmd.ExecuteReader();执行sql语句
            this.ddlEkm.DataSource = sdr;
            this.ddlEkm.DataTextField = "试卷ID";
            this.ddlEkm.DataValueField = "试卷ID";
            this.ddlEkm.DataBind();
            conn.Close();
        }