如何在运行时向转发器项目添加属性?
Posted
技术标签:
【中文标题】如何在运行时向转发器项目添加属性?【英文标题】:How to add an attribute to repeater item at runtime? 【发布时间】:2011-11-01 06:56:53 【问题描述】:我有一个中继器,我想为其项目添加鼠标悬停属性。
是否可以在运行时添加属性,如果可以,如何添加?
【问题讨论】:
【参考方案1】:标记:
<asp:Repeater ID="Repeater1" runat="server" OnItemDataBound="Repeater1_ItemDataBound">
<HeaderTemplate>
<table>
</HeaderTemplate>
<ItemTemplate>
<tr runat="server" id="itemRow">
<td>
<%# Container.DataItem.ToString() %>
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
代码:
protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
var row = e.Item.FindControl("itemRow") as htmlTableRow;
if (row != null)
row.Attributes["onmouseover"] = string.Format("alert('Hello from row #0');", e.Item.ItemIndex );
【讨论】:
谢谢先生。我已经失去了 12 分来得到这个答案。大声笑..再次感谢。 这个怎么用? FindControl 只返回 1 个控件。我们不应该对多个元素使用相同的 ID。相反,我们可以直接设置 HTML 属性:onmouseover=""以上是关于如何在运行时向转发器项目添加属性?的主要内容,如果未能解决你的问题,请参考以下文章
我可以使用类别和运行时向 UIScrollView 添加 BOOL 类型属性“isScrolling”吗?
如何在使用ActionListener按钮和GUI时向数组列表中添加项目?