我有一個綁定到ListView控件的SQLDataSource,但我想將部分綁定記錄放入HTML TITLE屬性中。下面是我想改變,因此它可以使用eval根據數據的內容來構建一個動態的TITLE我隱藏文件:如何在代碼隱藏中使用Eval來設置Page.Title
Public Partial Class zShowAd
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Me.Page.Title = " Dynamically set in ASPX page"
'how to use Eval here instead of the above constant ??
End Sub
End Class
下面是相應的.aspx文件:
<%@ Page Language="vb" AutoEventWireup="false" MasterPageFile="~/zSEO.master"
CodeBehind="zShowAd.aspx.vb" Inherits="Zipeee.zShowAd" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<div>
<asp:ListView ID="ShowAd" runat="server" DataSourceID="aPosting">
<LayoutTemplate>
<asp:PlaceHolder runat="server" ID="itemPlaceholder"></asp:PlaceHolder>
</LayoutTemplate>
<ItemTemplate>
<div>
<div id="wrapper">
<div id="header"></div>
<div id="main">
<div id="nav"> AdID: <%#Eval("AdID")%></div>
<div id="extras">Price: <%#Eval("Price")%></div>
<div id="content"> <%#Eval("AdDesc")%></div>
</div>
<div id="footer"></div>
</div>
</div>
</ItemTemplate>
</asp:ListView>
<asp:sqldatasource runat="server" id="aPosting"
ConnectionString="<%$ ConnectionStrings:ZIPeeeConnectionString2 %>"
SelectCommand="spGetAdByID" SelectCommandType="StoredProcedure">
<SelectParameters>
<asp:QueryStringParameter Name="AdId" QueryStringField="a" Type="String" />
</SelectParameters>
</asp:sqldatasource>
</div>
</asp:Content>
非常感謝。我搜索了很多,從來沒有找到一個很好的解釋,爲什麼這個語法: <%#SetPageTitle(Eval(「SomeProperty」))%> 與此語法: <%SetPageTitle(Eval(「SomeProperty」)) %> 來自經典的ASP背景,第二種形式似乎確定。是否存在#(是稱爲綁定符號?),因爲語句包含Eval? – 2010-03-03 13:37:50
@John:我試圖解釋更新後的答案中的差異。 – M4N 2010-03-03 15:10:27
多麼好的解釋!謝謝。 – 2010-03-03 16:46:52