Hi, I've done this task before within repeaters and it has worked. However I can't get the below to work for me in a normal webforms page. The images appear as broken links and breakpoints I put in the codebehind are not triggered.
(in the aspx file)
<asp:ImageButton ID="ImageButton1" runat="server" ImageUrl='<%# GetImageDirectory()%>btnRunReport.png' />
(codebehind)
public string GetImageDirectory()
{
return "~/App_Variants/LBSX/images/";
}
This is the second method I've tried, in the other one I tried passing the imagename through as a string, and it would return the entire link that way. Still no luck!
Any thoughts?
Thanks!
[EDIT] Thanks for the help everyone. In the end after the handy hints I found a recursive snippet which did the trick as follows:
private void UpdateImages(Control Parent)
{
foreach (Control c in Parent.Controls)
{
ImageButton i = c as ImageButton;
if (i != null)
{
i.ImageUrl = "~/App_Variants/LBSX/images/" + i.ImageUrl;
}
if (c.HasControls())
{
UpdateImages(c);
}
}
}
protected void Page_Load(object sender, EventArgs e)
{
UpdateImages(Page);
...
Hope it helps someone else.
Cheers