我遇到了问题找到一些控件。它们位于FormView中。
<asp:Panel ID="Panel5" runat="server">
<table cellpadding="3" cellspacing="2" class="formInnerTable">
<tr>
<td>
<asp:UpdatePanel ID="UpdatePanel4" runat="server">
<Triggers >
<asp:AsyncPostBackTrigger ControlID="Button1" EventName="Click" />
<asp:AsyncPostBackTrigger ControlID="bttnSavee" EventName="Click" />
</Triggers>
<ContentTemplate>
<asp:HiddenField ID="HidVendor" runat="server" />
</td>
</tr>
<tr>
<td>
<asp:FormView ID = "FVedit" DefaultMode = "Edit" runat = "server"
DataSourceID="SqlDataSource5">
<EditItemTemplate>
<table>
<tr>
<td align="center" colspan = "2">
<font color="blue" size="Medium">
<asp:Label ID="Label11" runat="server" Text='<%# Bind("data") %>'></asp:Label>(
<asp:Label ID="TextBox3" ForeColor = "blue" runat="server" Text='<%# Bind("data") %>'></asp:Label>)
</font>
<br /><br>
</td>
</tr>
<tr align="left">
<td align="right">
<asp:Label ID="Label2" runat="server" Text="As2 ID: "></asp:Label>
</td>
<td align="left">
<asp:TextBox ID="txtAs2IDe" runat="server" MaxLength = "30" Text='<%# Bind("data") %>'></asp:TextBox>
<asp:RequiredFieldValidator
ID="RFVe" Display="Dynamic" ControlToValidate = "txtAs2IDe" runat="server" ErrorMessage="You must Insert a Production AS2 Identifier."> </asp:RequiredFieldValidator>
<ajaxToolkit:ValidatorCalloutExtender ID="ValidatorCalloutExtender1e" TargetControlID="RFVe" HighlightCssClass="validatorCalloutHighlight" runat="server">
</ajaxToolkit:ValidatorCalloutExtender>
</td>
**我想要访问FVedit中的所有控件**在后面的代码中我可以访问FVedit,但我注意到这个formview的控件数只有一个,当它有很多控件时。
如何在代码中访问这些控件?
答案 0 :(得分:0)
“一个”控件很可能就像模板一样 - 我相当(但不是100%)确定你必须得到“TemplateItem”(我不完全确定这个名字是什么)这个控制将是)。
或者,使用(TextBox)FVedit.FindControl(“txtAs2IDe”)来获取控件 - 这似乎是一种非常常见的方法
答案 1 :(得分:0)
您可能需要在DataBound或DataBinding事件中使用FindControls ...就像使用转发器一样,请参阅nested repeaters and sqldatasource parameters
答案 2 :(得分:0)
我可以在Formview的数据库中访问。
你就是这样做的。