I have placed an image on the master page.
I see the image at design time.
But I don't see the image at run time.
What can be the problem?
I have tried to place the image on an image box. But it didn't work either.
<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="MasterPage.master.cs" Inherits="Ice_Web_Portal.UI.MasterPage" EnableTheming="true" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>.::ICE Web Portal::.</title>
<link href="App_Themes/SmokeAndGlass/SmokeAndGlass.css" rel="stylesheet" type="text/css" />
</head>
<body >
<form id="form1" runat="server">
<table style="position: static">
<tr>
<td align="left" colspan="2">
<asp:Image ID="Image1" runat="server" ImageUrl="~/App_Themes/Banner.JPG" /></td>
<td>
</td>
</tr>
<tr>
<td rowspan="2">
<div>
</div>
</td>
<td style="width: 3px">
<asp:LoginView ID="LoginView1" runat="server">
<LoggedInTemplate>
<table style="width: 204px">
<tr>
<td>
Login Status :</td>
<td>
<asp:LoginStatus ID="LoginStatus1" runat="server" />
</td>
<td>
</td>
</tr>
<tr>
<td>
Login Name :</td>
<td>
<asp:LoginName ID="LoginName1" runat="server" />
</td>
<td>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
</td>
</tr>
</table>
</LoggedInTemplate>
</asp:LoginView>
</td>
<td>
</td>
</tr>
<tr>
<td style="width: 3px">
<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
</asp:ContentPlaceHolder>
</td>
<td>
</td>
</tr>
<tr>
<td>
</td>
<td style="width: 3px">
</td>
<td>
</td>
</tr>
</table>
</form>
</body>
</html>
It sounds like you may have a URL mapping issue of some kind... For the ImageURL property try setting it to "~/Images/MyImage.png"...
Rather than storing an image directly in the App_Theme folder, create a folder for images and try to use that instead. The App_Theme directory is handled differently...
It sounds like an issue with Relative Paths in Master Pages to me. The solution is the tilda (~) character, which signifies the root folder regardless where the content page resides.
I just tested your code and it worked for me.
Have you tried it using multiple web browsers? (a caching issue perhaps?)
Are you manipulating the image in the code-behind?
I think your image files are not accessible on runtime.
Just paste this code in your web.config file and the images will be displayed.
<?xml version="1.0" encoding="utf-8"?>
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</configuration>
It is a relative path issue, change your stylesheet to:
<link href="~/App_Themes/SmokeAndGlass/SmokeAndGlass.css" rel="stylesheet" type="text/css" runat="server"/>
i had the same problem, it was permissions, just check images that show up in the web form and copy the same permissions to the img not showing up.
I know this is a long time question but i happen to see it now, i want to share with you all how i solve mine challenge:
Just replace bellow code in your web.config and put the image path as illustrated
<location path="Image Path">
<system.web>
<authorization>
<allow user="*"/>
</authorization>
</system.web>
</location>
Hope it help
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With