如何获得在直放站文字内容的价值 [英] How to get literal content value in Repeater
本文介绍了如何获得在直放站文字内容的价值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个转发器,如下所示。如何获得报告ID在code的后面(从内hiddenContent2前pression)?
这位前pression是
<%#的eval(ReportID)%>
注:I preFER,做一个方法的不可以使用的FindControl
。ASP.NET
< ASP:直放站ID =rptReports=服务器>
< HeaderTemplate中>
< DIV>
< / DIV>
< / HeaderTemplate中>
<的ItemTemplate>
< DIV ID =repeaterIdentifier级=repeaterIdentifier>
< DIV ID =reportTitle级=reportTitle>
<%#的eval(标题)+:%>
< / DIV>
< DIV ID =reportFrequency级=reportFrequency>
<%#频率 - +的eval(Frequeny)%>
< / DIV>
< / DIV>
< DIV CLASS =reportContent>
< DIV CLASS =repeaterLine>
< ASP:文本框ID =txtEmailRecipients=服务器级=文字编辑文字='<%#的eval(收件人)%>文本模式=多行>< / ASP:文本框>
< / DIV>
< / DIV>
< DIV ID =hiddenContent2>
<%#的eval(ReportID)%>
< / DIV>
< / ItemTemplate中>
< / ASP:直放站>
code
背后 保护无效Save_Click(对象发件人,EventArgs的)
{
的foreach(在rptReports.Items的RepeaterItem项)
{
的foreach(在item.Controls控制C)
{
字符串的test1 = c.ID;
类型t = c.GetType();
}
字符串的邮件=((文本框)item.Controls [1])的文本。
}
}
解决方案
试试这个,
的foreach(在rptReports.Items的RepeaterItem项)
{
标签lblReportID =(标签)item.FindControl(lblReportID);
字符串ReportID = lblReportID.Text;
}
如果您使用的是分区,那么试试这个:
< DIV ID =hiddenContent2=服务器>
<%#的eval(ReportID)%>
< / DIV>
的foreach(在rptReports.Items的RepeaterItem项)
{
System.Web.UI.HtmlControls.HtmlGenericControl hiddenContent2 =(System.Web.UI.HtmlControls.HtmlGenericControl)item.FindControl(hiddenContent2);
字符串ReportID = hiddenContent2.InnerHtml;
}
I have a repeater as shown below. How to get the Report ID in code behind (from the expression inside hiddenContent2) ?
The expression is
<%# Eval("ReportID") %>
Note: I prefer a method that does not use "FindControl".
ASP.NET
<asp:Repeater ID="rptReports" runat="server">
<HeaderTemplate>
<div>
</div>
</HeaderTemplate>
<ItemTemplate>
<div id="repeaterIdentifier" class="repeaterIdentifier">
<div id="reportTitle" class="reportTitle">
<%# Eval("Title") +":" %>
</div>
<div id ="reportFrequency" class="reportFrequency">
<%# " Frequency - "+ Eval("Frequeny") %>
</div>
</div>
<div class="reportContent">
<div class="repeaterLine">
<asp:TextBox ID="txtEmailRecipients" runat="server" class="textEdit" Text='<%# Eval("Recipients")%>' TextMode="MultiLine"></asp:TextBox>
</div>
</div>
<div id="hiddenContent2">
<%# Eval("ReportID") %>
</div>
</ItemTemplate>
</asp:Repeater>
Code Behind
protected void Save_Click(object sender, EventArgs e)
{
foreach (RepeaterItem item in rptReports.Items)
{
foreach(Control c in item.Controls)
{
string test1 = c.ID;
Type t = c.GetType();
}
string emails = ((TextBox)item.Controls[1]).Text;
}
}
解决方案
Try this,
foreach (RepeaterItem item in rptReports.Items)
{
Label lblReportID= (Label)item.FindControl("lblReportID");
string ReportID = lblReportID.Text;
}
If you are using "div", then try this:
<div id="hiddenContent2" runat="server">
<%# Eval("ReportID") %>
</div>
foreach (RepeaterItem item in rptReports.Items)
{
System.Web.UI.HtmlControls.HtmlGenericControl hiddenContent2 = (System.Web.UI.HtmlControls.HtmlGenericControl)item.FindControl("hiddenContent2");
string ReportID = hiddenContent2.InnerHtml;
}
这篇关于如何获得在直放站文字内容的价值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文