That's probably because the browser is caching the image. If you want to make sure the browser refreshes the image you can either:
(1) Add the appropriate Cache headers.
HttpResponse Response = HttpContext.Current.Response;
Response.Expires = 0;
Response.Cache.SetCacheability(HttpCacheability.NoCache);
(2) Add a unique query string to the URL to force a refresh.
Image1.ImageUrl = "~/images/a.png"+"?" + DateTime.Now.Ticks;