[英]Using c# in Web Forms to passing parameter to user control
从aspx页面,我试图显示集合中每个项目的用户控件,但是当尝试设置UserControl参数时,C#似乎被忽略了:
<%foreach (Fetus item in this.pregnancy.Fetus) {%>
//this returns a GUID:
"<%= item.Id.ToString() %>"
//this does not work, returns the characters between "" like < %= item.Id.ToString()%>:
<uc1:AntepartumCTGChart runat="server" ID="AntepartumCTGChart" FetusId="<%= item.Id.ToString()%>" />
<% } %>
我希望这能奏效,怎么了?
您必须使用数据绑定表达式
<uc1:AntepartumCTGChart runat="server" ID="AntepartumCTGChart" FetusId='<%# item.Id.ToString()%>' />
但是您必须在后面的代码中调用DataBind()
才能起作用。
您也可以使用中继器
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<uc1:AntepartumCTGChart runat="server" ID="AntepartumCTGChart" FetusId='<%# Eval("id").ToString()%>' />
</ItemTemplate>
</asp:Repeater>
然后在后面的代码中将数据绑定到它
Repeater1.DataSource = pregnancy.Fetus;
Repeater1.DataBind();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.