У меня есть ImageButton
в пределах ListView
. Когда пользователь нажимает кнопку, он выполняет операцию, а затем изменяет изображение, используемое кнопкой. При повторном выборе кнопки она должна вернуться в прежнее состояние.
Однако этого не происходит. Я могу получить кнопку для загрузки в первый раз / путь, но не назад.
Следующий код находится в 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
.
Есть идеи ???