这段代码中的 <%# 是什么意思?

zhuyongzhe 2007-11-30 03:10:58
这段代码中的 <%# 是什么意思?

<%@ Page Language="C#" AutoEventWireup="True" %>
<html>
<head>
<script language="C#" runat="server">
void Page_Load(Object Sender, EventArgs e) {
if (!IsPostBack) {
ArrayList values = new ArrayList();

values.Add(new PositionData("Microsoft", "Msft"));
values.Add(new PositionData("Intel", "Intc"));
values.Add(new PositionData("Dell", "Dell"));

Repeater1.DataSource = values;
Repeater1.DataBind();

Repeater2.DataSource = values;
Repeater2.DataBind();
}
}

public class PositionData {

private string name;
private string ticker;

public PositionData(string name, string ticker) {
this.name = name;
this.ticker = ticker;
}

public string Name {
get {
return name;
}
}

public string Ticker {
get {
return ticker;
}
}
}

</script>

</head>
<body>

<h3>Repeater Example</h3>

<form runat=server>

<b>Repeater1:</b>

<p>

<asp:Repeater id=Repeater1 runat="server">
<HeaderTemplate>
<table border=1>
<tr>
<td><b>Company</b></td>
<td><b>Symbol</b></td>
</tr>
</HeaderTemplate>

<ItemTemplate>
<tr>
<td> <%# DataBinder.Eval(Container.DataItem, "Name") %> </td>
<td> <%# DataBinder.Eval(Container.DataItem, "Ticker") %> </td>
</tr>
</ItemTemplate>

<FooterTemplate>
</table>
</FooterTemplate>

</asp:Repeater>
<p>

<b>Repeater2:</b>
<p>
<asp:Repeater id=Repeater2 runat="server">

<HeaderTemplate>
Company data:
</HeaderTemplate>

<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, "Name") %> (<%# DataBinder.Eval(Container.DataItem, "Ticker") %>)
</ItemTemplate>

<SeparatorTemplate>, </SeparatorTemplate>
</asp:Repeater>
</form>
</body>
</html>
...全文
534 26 打赏 收藏 转发到动态 举报
写回复
用AI写文章
26 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhuyongzhe 2007-12-08
  • 打赏
  • 举报
回复
谢谢各位,已经清楚了
西安风影 2007-11-30
  • 打赏
  • 举报
回复
在ASPX页面中想调用 服务器代码的函数或者变量,表达式
就必须加以特殊标识加以标记
此处是数据绑定表达式语法
<%#%>

比如还有常见的<%=DataTime.Now%> ,也是同样的用法
clear_zero 2007-11-30
  • 打赏
  • 举报
回复
<%# %> :数据绑定符号;
<% %> :用于包括服务器端代码段;
qawszx 2007-11-30
  • 打赏
  • 举报
回复
9楼写的很详细啊
lishijie910123 2007-11-30
  • 打赏
  • 举报
回复
给控件绑定数据
tyb1222 2007-11-30
  • 打赏
  • 举报
回复
是.net中绑定数据的 时候用的..
APPLESUCH5 2007-11-30
  • 打赏
  • 举报
回复
数据绑定的一种方法。在2005下面也可以用<%#Eval("字段名称")%>
kings2015 2007-11-30
  • 打赏
  • 举报
回复
控件里面的数据帮顶啊

<% %> :用于包括服务器端代码段;
<%= %> 输出变量

<%# DataBinder.Eval(Container.DataItem, "Name") %>
也可以省略写成这样
<%# Eval("Name") %>
  • 打赏
  • 举报
回复

mark
crackpot2007 2007-11-30
  • 打赏
  • 举报
回复
绑定数据表字段名称,显示数据。
lwl0376 2007-11-30
  • 打赏
  • 举报
回复
楼上的几位都说了,我up
colorslife 2007-11-30
  • 打赏
  • 举报
回复
学习了
suyiming 2007-11-30
  • 打赏
  • 举报
回复
<%# %> :数据绑定符号;
<% %> :用于包括服务器端代码段;
kimsonggook 2007-11-30
  • 打赏
  • 举报
回复
一般重数据库里取出来的值,如果要在HTML代码段里显示数据库里的值,就需要用到<% 符号来邦定。
xierfly 2007-11-30
  • 打赏
  • 举报
回复
<%# %> :数据绑定符号;
<% %> :用于包括服务器端代码段;
hongcha99 2007-11-30
  • 打赏
  • 举报
回复
<%# DataBinder.Eval(Container.DataItem, "Name") %>
就是邦定数据
heqi915 2007-11-30
  • 打赏
  • 举报
回复
友情UP一下
symbol441 2007-11-30
  • 打赏
  • 举报
回复
数据绑定表达式语法

当在页上调用 DataBind 方法时,数据绑定表达式创建服务器控件属性和数据源之间的绑定。可以将数据绑定表达式包含在服务器控件开始标记中属性/值对的值一侧,或页中的任何位置。


<tagprefix:tagname property="<%# data-binding expression %>"
runat="server" />
- or -
literal text <%# data-binding expression %>

参数
property
为其声明数据绑定的控件属性。

data-binding expression
符合备注部分中概述的要求的任意表达式。

备注

所有数据绑定表达式都必须包含在 <%# 和 %> 字符之间。

ASP.NET 支持分层数据绑定模型,该模型创建服务器控件属性和数据源之间的绑定。几乎任何服务器控件属性都可以绑定到任何公共字段或属性,这些公共字段或属性位于包含页或服务器控件的直接命名容器上。

数据绑定表达式使用 Eval 和 Bind 方法将数据绑定到控件,并将更改提交回数据库。Eval 方法是静态(只读)方法,该方法采用数据字段的值作为参数并将其作为字符串返回。Bind 方法支持读/写功能,可以检索数据绑定控件的值并将任何更改提交回数据库。




<html>
<head>
<script language="C#" runat="server">
void SubmitBtn_Click(Object sender, EventArgs e) {
// Rather than explictly pulling out the variable from the StateList control
// and then manipulating a Label control, just call Page.DataBind.
// This will evaluate any <%# %> expressions within the page.
Page.DataBind();
}
</script>
</head>
<body>

<h3><font face="Verdana">Binding to a property of another server control</font></h3>
<form runat="server">
<asp:DropDownList id="StateList" runat="server">
<asp:ListItem>CA</asp:ListItem>
<asp:ListItem>IN</asp:ListItem>
<asp:ListItem>KS</asp:ListItem>
<asp:ListItem>MD</asp:ListItem>
<asp:ListItem>MI</asp:ListItem>
<asp:ListItem>OR</asp:ListItem>
<asp:ListItem>TN</asp:ListItem>
<asp:ListItem>UT</asp:ListItem>
</asp:DropDownList>
<asp:button Text="Submit" OnClick="SubmitBtn_Click" runat="server"/>
<p>
Selected State: <asp:label text='<%# StateList.SelectedItem.Text %>' runat="server"/>
</form>
</body>
</html>

shawn_yang 2007-11-30
  • 打赏
  • 举报
回复
好像是数据绑定的变量用<%# %>
其他变量用<%= %>
happymugua 2007-11-30
  • 打赏
  • 举报
回复
<%# Function()‘或者变量名’%>表示此函数在服务器端执行。就跟ASP中的<%%>一样的道理。
加载更多回复(6)

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧