1
私は、ListViewコントロールのデータソースとして使用していますdatatable
でcolumn
IMAGE_PATHでファイル名にDataList
のItemTemplate
内div
のbackground-image
を設定しようとしています。div内に背景画像が表示されないDataList内ItemTemplate?
ここには2つのdatalists
を含む現在使用しているコードがあります。それは、ここで見つけたコードに基づいています:background-image eval
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="TestWebApp.Default" %>
<!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></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:DataList ID="DataListDiv" runat="server" RepeatColumns="5">
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text="My lagel"></asp:Label>
<div style='width:195px;height:162px;background-position:center;background-image:url(<%# Eval("image_path","~/Styles/Images/{0}") %>)'></div>
</ItemTemplate>
</asp:DataList>
<asp:DataList ID="DataListImages" runat="server" RepeatColumns="5">
<ItemTemplate>
<asp:ImageButton ID="ImageButton2" ImageUrl='<%# Eval("image_path","~/Styles/Images/{0}")%>' runat="server" />
</ItemTemplate>
</asp:DataList>
</div>
</form>
</body>
</html>
問題はDataListDiv
が表示されていないということです。 2番目のdatalist
(DataListImages
)が表示されますが、ImageButton
が使用されています。両方とも同じeval
を使用しているので、バインディングが正しいことがわかります。
これはdatatable
は、次のようになります。私は〜/を排除することにより、div
ためbackground-image:url
で相対パスを変更することになった
BedNum Waiter image_path
201 Joe Red.png
202 Jim Green.png
203 Mary Red.png
204 Carl Yellow.png
私はあなたのコードをテストする場合、画像は常に表示されます。他のフィールドの値を表示するために、 'ItemTemplate'の' DataListDiv'にラベルやテキストボックスを追加すると、それらは表示されますか? – ConnorsFan
はい、ラベルが表示されますが、画像は表示されません。両方のデータリストに画像がありますか? – rbhat
私はすべてのhtmlを投稿しました。多分どこか他のところに何か間違いがありますか? – rbhat