ListView
の中にImageButton
があります。ユーザーがボタンをクリックすると、操作が実行され、ボタンによって使用される画像が変更されます。もう一度ボタンを選択すると、元の状態に戻ります。リストビュー内のImageButton問題
しかし、これは起こっていません。私はボタンを最初にロードすることができます/方法は、しかし、後方にはありません。
次のコードは、OnItemDataBinding
に位置している。
if (e.CommandName == "fave")
{//save to favourites list - is logged in
//http://www.avbuyer.com/dealers/Detailed.asp?Id=102&AId=25633&Add=true
if (Session["MemberId"] != null && Session["MemberId"].ToString().Trim() != "")
{
using (SqlConnection conn = new SqlConnection(WebConfigurationManager.ConnectionStrings["AvBuyerConnectionString2"].ToString()))
{
using (SqlCommand cmd = new SqlCommand("saveFavourites", conn))
{
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@memberId", Session["MemberId"].ToString());
cmd.Parameters.AddWithValue("@aircraftId", e.CommandArgument);
cmd.Parameters.AddWithValue("@dateAdded", DateTime.Now);
conn.Open();
try
{//try saving
cmd.ExecuteNonQuery();
//update button
((ImageButton)e.Item.FindControl("ibtnSave")).ImageUrl = "../_img/aircraftsales/acresults_savebt_remove.png";
((ImageButton)e.Item.FindControl("ibtnSave")).ToolTip = "Remove from Favorites";
((ImageButton)e.Item.FindControl("ibtnSave")).CommandName = "removefave";
//Response.Write("CLICKED: Fave");
//pnlGeneralSuccessExtender.Show();
}
catch { pnlGeneralErrorExtender.Show(); }
}
}
}
else
{//not logged in or other problem
//please log-in
pnlSaveLogInExtender.Show();
}
}
else if (e.CommandName == "removefave")
{//remove listed aircraft from favourites
if (Session["MemberId"] != null && Session["MemberId"].ToString().Trim() != "")
{
using (SqlConnection conn = new SqlConnection(WebConfigurationManager.ConnectionStrings["AvBuyerConnectionString2"].ToString()))
{
using (SqlCommand cmd = new SqlCommand("DELETE FROM MembersAircraftShortList WHERE MemberId=" + Session["MemberId"].ToString().Trim() + "AND AircraftId =" + e.CommandArgument, conn))
{
conn.Open();
try
{
cmd.ExecuteNonQuery();
//pnlGeneralSuccessExtender.Show();
((ImageButton)e.Item.FindControl("ibtnSave")).ImageUrl = "../_img/aircraftsales/acresults_savebt.png";
((ImageButton)e.Item.FindControl("ibtnSave")).ToolTip = "Save to Favorites";
((ImageButton)e.Item.FindControl("ibtnSave")).CommandName = "fave";
//lvResults.DataBind();
}
catch { pnlGeneralErrorExtender.Show(); }
}
}
}
else
{//please log-in
pnlSaveLogInExtender.Show();
}
}
ListView
はPage_PreRender
に結合しています。