gpt4 book ai didi

c# - 无法从后面的代码访问转发器中的控件

转载 作者:行者123 更新时间:2023-11-30 13:40:16 26 4
gpt4 key购买 nike

我正在尝试从我的代码隐藏文件访问 asp 转发器中的 asp 标签。这是我到目前为止所做的:

    <asp:Repeater ID="Repeater1" runat="server" DataSourceID="LinqDataSource1" OnItemDataBound="outerFunction">
<HeaderTemplate>
<h1>Questions And Answers</h1>
</HeaderTemplate>

<ItemTemplate>
<p style="background-color:Red; color:Yellow;"><%#Eval("QText") %> :::::::::</p>
<asp:HiddenField ID="HiddenField1" runat="server" Value='<%# setQID(Eval("QID"))%>' />

<asp:Label ID="pageLabel" runat="server" Text="Label"></asp:Label>

<asp:Repeater ID="Repeater1" runat="server" DataSourceID="LinqDataSource2">
<HeaderTemplate>

</HeaderTemplate>
<ItemTemplate>



<%# (GetAnswer(Eval("AnsQID"))) != 1 ? (displayAnswer(Eval("AText"))) : ""%>


</ItemTemplate>

<FooterTemplate>

</FooterTemplate>

</asp:Repeater>

<span style="display:block; border-top:1px solid Gray;"></span>
</ItemTemplate>
</asp:Repeater>

*这是我背后的代码*

public void outerFunction(object sender, RepeaterItemEventArgs  e)
{
Label myLabel = (Label) e.Item.FindControl("pageLabel");
myLabel.Text = "HELLO World";
}

我正在尝试显示问题和答案。每个问题都可以有多个答案。这就是为什么我将它放在嵌套的中继器控件中。现在我只需要知道我怎么能说例如在外部转发器中有一个“div”元素并将我在内部转发器中得到的每个答案绑定(bind)到那个父 div。

谢谢!

最佳答案

您的代码看起来不错,只是您没有检查所在行的类型:

public void outerFunction(object sender, RepeaterItemEventArgs  e)
{
if(e.Item.ItemType==ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem)
{
Label myLabel = (Label) e.Item.FindControl("pageLabel");
myLabel.Text = "HELLO World";
}
}

关于c# - 无法从后面的代码访问转发器中的控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8434063/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com