2014-02-05 4 views
0

내가 뭘 잘못하고 있는지 잘 모르겠습니다. 페이지에 이미지를 표시하려고하는데 URL이 표시되지만 이미지는 표시되지 않습니다. 나는 템플리트 필드와 이미지 필드 둘 다로 시도했다. Firebug를 사용하면 이미지 소스의 가치를 알 수 있습니다.asp.net의 gridview에 이미지 표시

aspx 페이지 : 파이어 버그에서 웹 페이지의

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="ImageID" DataSourceID="Images"> 
    <Columns> 
     <asp:BoundField DataField="ImageID" HeaderText="ImageID" InsertVisible="False" ReadOnly="True" SortExpression="ImageID" /> 
     <asp:BoundField DataField="InciID" HeaderText="InciID" SortExpression="InciID" /> 
     <asp:TemplateField HeaderText="Imagepath" SortExpression="Imagepath"> 
      <EditItemTemplate> 
       <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("Imagepath") %>'></asp:TextBox> 
      </EditItemTemplate> 
      <ItemTemplate> 
       <asp:image runat="server" ID="Label1" ImageUrl='<%# Bind("Imagepath") %>'></asp:image> 
      </ItemTemplate> 
     </asp:TemplateField> 
     <asp:BoundField DataField="ImageDescription" HeaderText="ImageDescription" SortExpression="ImageDescription" /> 
     <asp:BoundField DataField="Category" HeaderText="Category" SortExpression="Category" /> 
     <asp:ImageField DataImageUrlField="Imagepath"> 
      <ControlStyle Height="100px" Width="100px" /> 
     </asp:ImageField> 
    </Columns> 
</asp:GridView> 

소스 코드 :

<td><img id="ctl00_ContentPlaceHolder1_GridView1_ctl15_Label1" src="images\curiouskids.jpg"></td> 
<td><img style="height:100px;width:100px;" src="images\curiouskids.jpg"></td> 
+0

'images \ curiouskids.jpg'이 (가) 있고 페이지와 관련된 올바른 경로에 있는지 확인 했습니까? – mason

+0

이것을 이미지 URL "~ \"앞에 추가하려고 시도합니다. "~ \ images \ curiouskids.jpg"와 같은 것입니다. – Praveen

+0

@ msm & bball - 이미지가 종료됩니다. @Praveen - tilda는 작동하지만 슬래시는 앞을 향해야합니다. – Nita

답변

2

당신의 슬래시의 모든 앞으로해야는 URL에 슬래시.

images/curiouskids.jpg 
+0

Dave에게 감사드립니다. 슬래시를 넣으면 변화가있었습니다. 그러나 "이미지"폴더에는 있지만 C 드라이브의 폴더에는없는 이미지 만 가져 왔습니다. – Nita

+0

의미가 있습니다. 이미지는 사용자가 액세스 할 수 있도록 사이트의 일부 여야합니다. –

+0

감사합니다. Dave. 이미지가 저장되어있는 서버로 경로 URL을 만들 수 있었던 다른 프로젝트에서 리피터를 사용했습니다. – Nita

1

나는 Dave와 Praveen에 동의합니다.

슬래시가 슬래시가되어야하며 ~ /를 앞에 추가해야합니다.

0

감사합니다. 나는 당신의 제안을 받아서 아래의 코드로 그것을 수정했다. 이제 100x100의 축소판 그림이 있고 그 아래에 "확대보기"라는 텍스트가 있고이 단추를 클릭하면 전체 이미지가 새 창에서 열립니다. 여기에 코드에 tilda와 앞 슬래시를 추가하고 업로드 뒤 코드에서 제거했습니다.

<asp:TemplateField> 
     <EditItemTemplate> 
      <asp:TextBox ID="TextBox2" runat="server" Text='<%# Eval("Imagepath") %>'></asp:TextBox> 
     </EditItemTemplate> 
     <ItemTemplate> 
      <asp:Image ID="Image1" runat="server" ImageUrl='<%# Eval("Imagepath", "~/images/{0}") %>' Width="150px" Height="150px" /><br /> 
      <asp:HyperLink ID="HyperLink1" runat="server" Text="Enlarged view" Target="_blank" NavigateUrl='<%# String.Format("~/images/{0}", Eval("Imagepath"))%>' /> 
     </ItemTemplate> 
</asp:TemplateField> 
관련 문제