我正在使用 Sitecore,并且我有一个包含选项卡的网页。此选项卡可以有 1 个或多个子项。现在有一个促销控件,它会根据选择的选项卡而动态变化。
因此,如果我选择了 Tab1,那么该页面将显示一些促销信息。Tab2 可能有不同/相同的促销。这两个被放置在不同的控件中。
到目前为止,我得到的只是这段代码:
Sitecore.Data.Database db = Sitecore.Context.Database;
Item home = db.GetItem(Sitecore.Context.Site.StartPath);
var getItems = (from Item item in currItem.Children.InnerChildren
select item).ToList();
此查询的结果是 3 项。因为有 3 个选项卡。这些选项卡在转发器中,如下所示:
<asp:Repeater ID="rptPromo" runat="server" OnItemDataBound="rptPromo_ItemBound">
<ItemTemplate>
<table width="100%">
<tbody>
<tr>
<td>
<h2><sup><sc:Text ID="txtPromo" Field="PromoText" runat="server" /></sup></h2>
</td>
</tr>
</tbody>
</table>
</ItemTemplate>
如何获取选择了哪个选项卡的信息。我在一个单独的函数中更改了 PROMO 控件:
protected void rptPromo_ItemBound (Object sender, RepeaterItemEventArgs e)
{
Item i = e.Item.DataItem as Item;
Text txtPromo = e.Item.FindControl("txtPromo") as Text;
//txtPromo.Attributes.Add("txtPromo", txtPromo);
//HTMLControl hyperLinkLookUp = e.Item.FindControl("") as
string s;
}
我应该怎么办?