0

リスト項目がほとんどない DropDownList があります。アイテムを選択するたびに、それに基づいてグリッドビューをバインドしているため、結果のグリッドビューは選択に依存します。一部の結果がページサイズを超えているため、GridView の 2 ページ目に移動する必要がありますが、2 ページ目を選択すると GridView が消えます。

 protected void DDL_SelectedIndexChanged(object sender, EventArgs e)
 {
    string constr = ConfigurationSettings.AppSettings["ConnectionInfo"];
    SqlConnection con = new SqlConnection(constr);

    con.Open();
    string str = string.Empty;
    str = "SELECT * FROM Table1";

    SqlDataAdapter adp = new SqlDataAdapter(str, con);

    DataSet ds = new DataSet();
    adp.Fill(ds, "myds");

    BusinessKPIGrid.DataSource = ds;
    BusinessKPIGrid.DataBind();
}

 protected void OnGridViewPaging(object sender, GridViewPageEventArgs e)
 {
    //I know I need to bind the gridview here, but how ?
    BusinessKPIGrid.PageIndex = e.NewPageIndex;
    BusinessKPIGrid.DataBind();
 }

個別のバインド機能がないため、ページング イベントでグリッドビューをバインドする方法がわかりません。

4

3 に答える 3

1

グリッド ビューのページ イベントには別の関数があります。グリッドをバインドするための別のメソッドを作成し、pageindexchange イベントでそのメソッドを呼び出します。

protected void BusinessKPIGrid_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
    BusinessKPIGrid.PageIndex = e.NewPageIndex; 
     bindyourgrid();
}
于 2012-07-30T07:07:09.307 に答える
1

これを試して

protected void DDL_SelectedIndexChanged(object sender, EventArgs e)
{
    string constr = ConfigurationSettings.AppSettings["ConnectionInfo"];
    SqlConnection con = new SqlConnection(constr);

    con.Open();
    string str = string.Empty;
    str = "SELECT * FROM Table1";

    SqlDataAdapter adp = new SqlDataAdapter(str, con);

    DataSet ds = new DataSet();
    adp.Fill(ds, "myds");
    ViewState["ds"]=ds;
    BusinessKPIGrid.DataSource = ds;
    BusinessKPIGrid.DataBind();

}

  protected void OnGridViewPaging(object sender, GridViewPageEventArgs e)
    {
        //I know I need to bind the gridview here, but how ?
        BusinessKPIGrid.PageIndex = e.NewPageIndex;
         BusinessKPIGrid.DataSource = (DataSet)ViewState["ds"];
        BusinessKPIGrid.DataBind();
    }
于 2012-07-30T07:10:39.193 に答える
0

DDL_SelectedIndexChanged から何かを検索している場合は、「PageIndexChanging」を使用してページ サイズを設定します。

protected void gvworker_PageIndexChanging(object sender, GridViewPageEventArgs e)
    {
        gvworker.PageIndex = e.NewPageIndex;
        //result got from ddl list i.e bind your data set
    }
于 2012-07-30T07:10:48.477 に答える