ユーザーが GridView から任意のレコードを選択すると、GridView の選択に基づいて DetailView が更新されます。だから私がやろうとしているのは、DetailViewから何かを削除すると、GridViewをリフレッシュしたいので、基本的にGridViewに削除されたレコードを表示したくないということです。接続と SQL ステートメントの後にデータ バインドを実行して、この問題を解決しようとしましたが、更新されません。注意すべきことの 1 つは、アコーディオン ペインを使用しているが、グリッドビューと詳細ビューの両方が同じペインにあることです。これが何かを壊しているかどうかはわかりません。これが私のコードです:
protected void Refresh_ItemCommand(object sender, DetailsViewCommandEventArgs e)
{
if (e.CommandName.Equals("Delete", StringComparison.CurrentCultureIgnoreCase))
{
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["MyConnectionString"].ConnectionString);
SqlDataAdapter da = new SqlDataAdapter("select ID, Name, Address from dbo.MyTable", con);
DataTable dt = new DataTable();
da.Fill(dt);
Gridview1.DataSource = dt;
Gridview1.DataBind();
}
}