主页面图像不显示在内容页面上

Moh*_*eem 0 c# asp.net

我的母版页上有一个像这样的图像:

<img src="../Images/logo.jpg" />
Run Code Online (Sandbox Code Playgroud)

母版页位于 Root/MasterPages/masterpage.master

现在,此图像显示在内容页面中Root/SomeDir/ContentPage.aspx,但在内容页面中不起作用Root/SomeDir1/SomeDir2/ContentPage.aspx.为什么?

母版HTML

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
    <asp:ContentPlaceHolder ID="head" runat="server">
    </asp:ContentPlaceHolder>
    <style type="text/css">
        #div_Main
        {
            height: 825px;
            width: 1022px;
            top: 16px;
            left: 77px;
            position: absolute;
            margin-left: 14px;
        }
        #div_LeftPanel
        {
            width: 299px;
            top: 179px;
            left: 2px;
            position: absolute;
            height: 641px;
            background-color: #7E8387;
        }
        #div_Content
        {
            width: 716px;
            top: 180px;
            left: 303px;
            position: absolute;
            height: 638px;
        }
        #div_Header
        {
            top: 0px;
            left: 0px;
            position: absolute;
            height: 176px;
            width: 1022px;
        }
    </style>
</head>
<body>
    <form id="form1" runat="server">
    <div id="div_Main">
      <div id="div_Header">
          <img src="../Images/logo.jpg" />
      </div>
      <div id="div_Content">
        <asp:ContentPlaceHolder ID="cph_WorkingArea" runat="server">

        </asp:ContentPlaceHolder>
      </div>


      <div id="div_LeftPanel">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
          <br />
          <br />
          <br />
          <br />
          <br />
          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<asp:LinkButton 
              ID="lnkbtn_JObAspirantsList" runat="server" 
              style="color: #CFCFF3; font-size: xx-large" 
              onclick="lnkbtn_JObAspirantsList_Click">Job Aspirants List</asp:LinkButton>
          <br />
          <br />
          <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
          <br />
          <br />
          <br />
          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
          <asp:LinkButton ID="lnkbtn_ERFList" runat="server" 
              style="color: #CFCFF3; font-size: xx-large" onclick="lnkbtn_ERFList_Click">ERF List</asp:LinkButton>
          <br />
          <br />
          <br />
          <br />
          <br />
          <br />
          <asp:LinkButton ID="lnkbtn_InterviewFeedbackList" runat="server" 
              style="color: #CFCFF3; font-size: xx-large" 
              onclick="lnkbtn_InterviewFeedbackList_Click">Interview FeedbackList</asp:LinkButton>
          <br />
          <br />
          <br />
          <br />
          <br />
          <br />
          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<asp:LinkButton ID="lnkbtn_NewEmployeeList" runat="server" 
              style="color: #CFCFF3; font-size: xx-large" 
              onclick="lnkbtn_NewEmployeeList_Click">New Employees List</asp:LinkButton>
            <br />
          <br />
          <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
          <asp:LinkButton ID="LinkButton1" runat="server" style="color: #CFCFF3; font-size: xx-large"  onclick="LinkButton1_Click">LogOut</asp:LinkButton>
          <br />
          <br />
&nbsp;&nbsp;
            </div>
     </div>
    </form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

内容页面HTML

<%@ Page Language="C#" MasterPageFile="~/MasterPages/HRMaster.Master" AutoEventWireup="true" CodeBehind="ERF.aspx.cs" Inherits="StarTechnologies.ERF" Title="Untitled Page" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="cph_WorkingArea" runat="server">


    <p>
        <br />
&nbsp;&nbsp;&nbsp;&nbsp;
        <asp:GridView ID="GridView1" runat="server" Height="212px" 
            onselectedindexchanged="GridView1_SelectedIndexChanged" Width="434px">
        </asp:GridView>
    </p>
    <br />


</asp:Content>
Run Code Online (Sandbox Code Playgroud)

Mar*_*len 9

RPM1984几乎是正确的.您应该使用它~来指示相对于应用程序根目录的路径.但是,您应该将其转换为浏览器可以理解的路径.如果您正在使用自动完成的像Image这样的ASP.NET控件.如果您正在使用HTML标记(没有runat="server"),则必须使用Page.ResolveClientUrl()手动转换路径.

例如:

<img src="<%= ResolveClientUrl( "~/Images/logo.jpg" ) %>"/>
Run Code Online (Sandbox Code Playgroud)

但是,在这种情况下,您可能最好使用Image控件:

<asp:Image runat="server" ImageUrl="~/Images/logo.jpg"/>
Run Code Online (Sandbox Code Playgroud)