ASP.net Repeater 如何更改header 模板标题服务器端?
ASP.net Repeater How to change header template caption server side?
我想根据某些变量的状态将文本 "Employer Info" 更改为其他内容。如何获取标题的引用以便更改其文本?
<asp:Repeater ID="rptEmployers" runat="server">
<HeaderTemplate>
<table class="rotoTable1">
<caption class="rotoTableCaption1">Employer Info</caption>
</HeaderTemplate>
您需要使用中继器上的 ItemDataBound
事件来执行此操作,并使用 runat=server
更新您的标题,以便您可以从 code-behind.[=14= 操作它]
<asp:Repeater ID="rptEmployers" OnItemDataBound="rptEmployers_ItemDataBound" runat="server">
<HeaderTemplate>
<table class="rotoTable1">
<caption id="CaptionCtrl" runat="server" class="rotoTableCaption1">Employer Info</caption>
</HeaderTemplate>
在你的代码隐藏文件中,你会有这样的东西:
protected void rptEmployers_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
switch (e.Item.ItemType)
{
case ListItemType.Header:
HtmlGenericControl CaptionCtrl= (HtmlGenericControl) e.Item.FindControl("CaptionCtrl");
CaptionCtrl.InnerHtml = "Your new text"
break;
}
}
您可以使用 Repeater 的 ItemDataBound。
<asp:Repeater ID="rptEmployers" runat="server" OnItemDataBound="rptEmployers_ItemDataBound">
<HeaderTemplate>
<table class="rotoTable1">
<caption class="rotoTableCaption1">
<asp:Literal ID="EmployerCaptionLabel" runat="server" Text="Employer Info"></asp:Literal>
</caption>
</HeaderTemplate>
在后面的代码中,将标题设置为您需要的任何内容:
protected void rptEmployers_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Header)
{
var employerCaption = (Literal)e.Item.FindControl("EmployerCaptionLabel");
employerCaption.Text = "<your caption here>";
}
}
我想根据某些变量的状态将文本 "Employer Info" 更改为其他内容。如何获取标题的引用以便更改其文本?
<asp:Repeater ID="rptEmployers" runat="server">
<HeaderTemplate>
<table class="rotoTable1">
<caption class="rotoTableCaption1">Employer Info</caption>
</HeaderTemplate>
您需要使用中继器上的 ItemDataBound
事件来执行此操作,并使用 runat=server
更新您的标题,以便您可以从 code-behind.[=14= 操作它]
<asp:Repeater ID="rptEmployers" OnItemDataBound="rptEmployers_ItemDataBound" runat="server">
<HeaderTemplate>
<table class="rotoTable1">
<caption id="CaptionCtrl" runat="server" class="rotoTableCaption1">Employer Info</caption>
</HeaderTemplate>
在你的代码隐藏文件中,你会有这样的东西:
protected void rptEmployers_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
switch (e.Item.ItemType)
{
case ListItemType.Header:
HtmlGenericControl CaptionCtrl= (HtmlGenericControl) e.Item.FindControl("CaptionCtrl");
CaptionCtrl.InnerHtml = "Your new text"
break;
}
}
您可以使用 Repeater 的 ItemDataBound。
<asp:Repeater ID="rptEmployers" runat="server" OnItemDataBound="rptEmployers_ItemDataBound">
<HeaderTemplate>
<table class="rotoTable1">
<caption class="rotoTableCaption1">
<asp:Literal ID="EmployerCaptionLabel" runat="server" Text="Employer Info"></asp:Literal>
</caption>
</HeaderTemplate>
在后面的代码中,将标题设置为您需要的任何内容:
protected void rptEmployers_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Header)
{
var employerCaption = (Literal)e.Item.FindControl("EmployerCaptionLabel");
employerCaption.Text = "<your caption here>";
}
}