![]() |
Strange issue with ImageButton with no ImageUrl
I realize that there is no good reason for an image button to not have an
ImageUrl but I have just hit upon a strange problem when converting an ASP.NET 1.1 web application to 2.0. An asp:ImageButton control without an ImageUrl contained within a WebForm causes a redirect to the default document in IIS. This behaviour did not occur in .NET 1.1. This can easily be duplicated by the following steps :- 1. Create a new ASP.NET Web Application project in VS2005. 2. Add a new Web Form (WebForm1.aspx) 3. In the existing Default.aspx add a standard asp:Button to the form and add a standard on click event handler containing a simple Response.Redirect("WebForm1.aspx"); 4. Add an asp:ImageButton to WebForm1.aspx, e.g <asp:ImageButton ID="ImageButton1" runat="server" /> 5. Set two breakpoints, one on each Page_Load method of both Web Forms. Debug the application, you will notice it breakpoints on the Default.aspx page load and on the postback when you press the button. This is fine. It will then breakpoint on the page load of WebForm1.aspx and *THEN* redirect back to Default.aspx and break on the page load event again. The final breakpoint does not occur if the ImageUrl is completed or if no default document has been setup in IIS. Thanks Gary |
RE: Strange issue with ImageButton with no ImageUrl
this is standard browser behavior. any img, script, css, etc, with a src=""
or missing, will use the default path as the url. iis will usually redirect to default.aspx (or whatever is the default). -- bruce (sqlwork.com) "Gary K" wrote: > I realize that there is no good reason for an image button to not have an > ImageUrl but I have just hit upon a strange problem when converting an > ASP.NET 1.1 web application to 2.0. An asp:ImageButton control without an > ImageUrl contained within a WebForm causes a redirect to the default > document in IIS. This behaviour did not occur in .NET 1.1. > > This can easily be duplicated by the following steps :- > > 1. Create a new ASP.NET Web Application project in VS2005. > 2. Add a new Web Form (WebForm1.aspx) > 3. In the existing Default.aspx add a standard asp:Button to the form and > add a standard on click event handler containing a simple > Response.Redirect("WebForm1.aspx"); > 4. Add an asp:ImageButton to WebForm1.aspx, e.g <asp:ImageButton > ID="ImageButton1" runat="server" /> > 5. Set two breakpoints, one on each Page_Load method of both Web Forms. > > Debug the application, you will notice it breakpoints on the Default.aspx > page load and on the postback when you press the button. This is fine. It > will then breakpoint on the page load of WebForm1.aspx and *THEN* redirect > back to Default.aspx and break on the page load event again. The final > breakpoint does not occur if the ImageUrl is completed or if no default > document has been setup in IIS. > > Thanks > > Gary > > > |
Re: Strange issue with ImageButton with no ImageUrl
> this is standard browser behavior. any img, script, css, etc, with a
> src="" > or missing, will use the default path as the url. iis will usually > redirect > to default.aspx (or whatever is the default). Thanks for the reply Bruce, that does make sense now. The generated html is different between the versions of Visual Studio, I now see the src="" has been added :- VS2003 <input type="image" name="ImageButton1" id="ImageButton1" alt="" border="0" /> VS2005 <input type="image" name="ImageButton1" id="ImageButton1" src="" style="border-width:0px;" /> That explains it. Thanks Gary |
| All times are GMT. The time now is 02:35 AM. |
Powered by vBulletin®. Copyright ©2000 - 2013, vBulletin Solutions, Inc.
SEO by vBSEO ©2010, Crawlability, Inc.