ボタンがクリックされたときに、コントロールのグループをページに追加しようとしています。同じグループのコントロールを複数回、場合によっては無限に追加する必要があります。現在、コントロールの追加ボタンのクリックは機能します。2回目、3回目、4回目などをクリックすると、正しく機能しなくなります。これは、現在ページ上にあるコントロールをオーバーライドおよび置換するため、コントロールの1つのグループのみが表示されます。
これは、コントロールを作成して追加する私のコードです。これはクリックイベントで発生します
Label contactTypeLabel = new Label();
contactTypeLabel.Text = "Contact Type" + contactCount.ToString();
contactTypeLabel.ID = "contactLabel" + contactCount.ToString();
this.panelContacts.Controls.Add(contactTypeLabel);
DropDownList contactTypeDropDownList = new DropDownList();
//loading dropdown
this.panelContacts.Controls.Add(contactTypeDropDownList);
this.panelContacts.Controls.Add(new LiteralControl("<br />"));
これは私のコントロールが追加されているパネルです。
<asp:UpdatePanel ID="UpdateContacts" runat="server">
<ContentTemplate>
<asp:Panel ID="panelContacts" runat="server">
</asp:Panel>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="btnAddContacts" EventName="Click" />
</Triggers>
</asp:UpdatePanel>
私がやったことは、jQueryを使用してコントロールを作成/削除することでした。はるかに良く、簡単に動作します!