本周我遇到了一个问题,试图确定使用什么控件来以非网格外观的方式显示来自多个数据源的数据。感谢这个论坛,我了解到最好的方式是在中继器内部使用具有不同控件的中继器,如标签和表格。我不完全确定如何实现它的全部实现,但我需要学习的第一件事是如何更改表格背后的代码以及我将在转发器中使用的Label的文本。我已经阅读并发现以下内容应该可以工作。但它没有。从代码中引用控制ID在中继器
for (int i = 0; i <= Repeater1.Items.Count - 1; i++)
{
Label labelCustomerID = (Label)Repeater1.Items[i].FindControl("labelCustomerID");
labelCustomerID.Text = "from code Behind";
}
我的声明语法是这样的:
<asp:Repeater ID="Repeater1" runat="server" DataSourceID="SqlDataSource1">
<ItemTemplate>
<hr/>
<asp:Label runat="server" ID="labelCustomerId" />
<div style="padding-left:150px">
<asp:Label runat="server" ID="labelCustomerName" />
<asp:Label runat="server" ID="labelCustomerAddress" />
<asp:Label runat="server" ID="labelCityState" />
</div>
<asp:GridView runat="server" ID="gridViewRecordData">
</asp:GridView>
<hr/>
</ItemTemplate>
</asp:Repeater>
感谢教育局我已经远远得到这一点。不知道我要如何填充一个数据记录的GridView,但首先要做的事情是......我需要能够更改标签的文本。如果我能做到这一点,我相信其余的将会落实到位。
请帮帮我! :) 戴尔
你可以发布你的代码隐藏文件的所有代码吗?我认为你在填充之前引用了中继器。 –
谢谢。就是这样。我没有意识到在获得控件名称之前你必须将数据绑定到它。现在我知道了!哈!谢谢。 – dellbingham
我会继续发布上述评论作为答案,以便可以关闭问题。请标记为答案。谢谢。 –