page_load の下にデータで満たされたグリッドビューがあります。このグリッドビューはアルファベット順に並べ替えることができ、ページング機能を備えています。ただし、ドロップダウンリストの値を選択すると、グリッドビューの並べ替えられた情報がデフォルトの page_load データにリセットされます。
更新パネルとトリガーを追加しましたが、まだ機能しません。私はすべてのSOスレッドを検索し、すべてがトリガーと更新パネルをアドバイスしました。また、ドロップダウン リストで自動ポスト バックを有効にします。ddl の ID も正しいです。
<asp:UpdatePanel ID="UpdatePanel1" runat="server" >
<ContentTemplate>
**GridView**
*dropdownlist category*
*search textbox*
*search button*
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="ddlCategory" EventName="SelectedIndexChanged" />
</Triggers>
</asp:UpdatePanel>
</asp:Content>
ddl 値の選択によって、ソートされた ddl の値が page_load にあるデフォルトのデータにリセットされないようにする方法を教えてください。
これは、page_loadでグリッドビューをバインドする方法です
Session["gridview"] = DataBindByDataSet();
GVPolice.DataSource = Session["gridview"];
GVPolice.DataBind();
これはデータテーブルメソッドです
private DataTable DataBindByDataSet()
{
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);
conn.Open();
DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter(*sql command*);
da.Fill(ds);
conn.Close();
return ds.Tables[0];
}