NET。我试图访问SeparatorTemplate
内的代码后面的div标签
这是我的aspx代码
<div>
<asp:DataList ID="DataList1" runat="server">
<ItemStyle ForeColor="#4A3C8C" BackColor="#E7E7FF"></ItemStyle>
<HeaderTemplate>
<table width="900px">
<tr>
<td width="300px">
<b>Name</b>
</td>
<td width="300px">
<b>Account No</b>
</td>
<td width="300px">
<b>Company</b>
</td>
</tr>
</table>
</HeaderTemplate>
<ItemTemplate>
<table width="900px">
<tr>
<td align="left" width="300px">
<%# DataBinder.Eval(Container.DataItem, "Name")%>
</td>
<td align="left" width="300px">
<%# DataBinder.Eval(Container.DataItem, "AccountNo")%>
</td>
<td align="left" width="300px">
<%# DataBinder.Eval(Container.DataItem, "Company")%>
</td>
</tr>
</table>
</ItemTemplate>
<HeaderStyle Font-Bold="True" ForeColor="#F7F7F7" BackColor="#4A3C8C"></HeaderStyle>
<SeparatorTemplate>
<div id="divSeprator" runat="server">//This div tag i want to access in the code behind
<br />
</div>
</SeparatorTemplate>
</asp:DataList>
</div>
我已尝试访问this.Controls
和DataList1.Controls
,但这两个都不包含此div我知道它在SepratorTemplate
但我不知道如何访问控件从该模板,因为没有什么可以找到控件。
答案 0 :(得分:3)
protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e)
{
// Find the div control as htmlgenericcontrol type, if found apply style
System.Web.UI.HtmlControls.HtmlGenericControl div = (System.Web.UI.HtmlControls.HtmlGenericControl)e.Item.FindControl("DivContent");
if(div != null)
div.Style.Add("border-color", "Red");
}
答案 1 :(得分:0)
您需要从datalist行中找到它,如下所示。
HtmlGenericControl div = (HtmlGenericControl)yourDataList.Items[0].FindControl("dvSeparator");
您可以在.Items[]
中传递要查找要处理的div的数据列表项(行)的索引。
如果你想处理所有datalist项目中的div,那么你可以在@Upvote MarkAnswer在他的回答中建议的数据列表的项目数据绑定事件中进行。
答案 2 :(得分:0)
HtmlGenericControl divSeprator = (HtmlGenericControl)DataList1.Items[0].FindControl("divSeprator");
0 是您的商品索引。
或者只是绑定 DataList1_ItemDataBoud 事件并使用:
if(e.Item.ItemType == ListItemType.Separator)
HtmlGenericControl divSeprator = (HtmlGenericControl)e.Item.FindControl("divSeprator");
答案 3 :(得分:-1)
你需要制作标签runat =“server”并在
时给出它<div id="div" runat="server">
然后您可以使用
访问它HtmlGenericControl div = HtmlGenericControl("div")