我正在尝试使用与我多次使用的相同技术将值附加到网格视图上的标签,即使在此页面中也是如此,但查找控件找不到标签。有谁知道为什么会这样?从我所做的研究中,我遇到了一些情况,在一个项目模板中有 2 个标签会导致此问题,但在某些情况下,它不会。
网格视图:
<asp:TemplateField>
<ItemTemplate>
<asp:Label ID="lblStockDetailsS" runat="server"></asp:Label>
<asp:Label ID="lbl7" runat="server" Text="hello"></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
代码隐藏:
Label lblSD = (Label)e.Row.FindControl("lblStockDetailsS");
lblSD.Text = Sline.StockDetailsS;
Label lblSD2 = (Label)e.Row.FindControl("lbl7");
lblSD2.Text = Sline.NLocalStock;
- 事件将在网格中的每一行上触发。
- 在找到数据行中可用的控件之前,您必须检查当前行是标题还是数据行。
-
将代码块置于此条件中。
if(e.Row.RowType == DataControlRowType.DataRow(
参考: https://techpattarai.com/findcontrol-onrowdatabound-csharp/
谢谢