我正在使用 gridview 显示数据的页面。我在 ItemTemplate 中有一些动态创建的文本框,每行包含几个文本框。现在我还有一个使用 ajax 的更新面板,并且应该只在单击我的链接按钮后呈现。在我希望发生这种情况而不会导致完整的回发之后,数据列表被绑定在我的代码中。但是,现在当我单击链接按钮时,它会导致完整的回发,从而消除了我动态创建的控件。
我觉得我非常接近解决方案。我需要其中之一发生(选项 1 似乎更有用):单击链接按钮时不要导致回发,但仍会在更新面板中呈现我的完整数据列表
或者
在回发期间不会删除我动态创建的控件。
这是我的代码:
<ItemTemplate>
[ <asp:LinkButton ID="SelectCommand" CommandName="Select" runat="server" Text="+" CssClass="sunocoBold"/> ]
<%-- start sub panel--%>
<asp:UpdatePanel ID="UpdatePanel2" runat="server">
<ContentTemplate>
<asp:DataList ID="DataList1" runat="server" RepeatDirection="Vertical"
OnItemCommand="DataList_OnItemCommand">
<ItemTemplate>
<asp:LinkButton ID="Select" CommandName="SelectCommand" CommandArgument='<%#Eval("ship_to_num")%>' runat="server" Text='<%#Eval("ship_to_num")%>' />
</ItemTemplate>
</asp:DataList>
</ContentTemplate>
</asp:UpdatePanel>
<%-- end sub panel--%>
</ItemTemplate>
<asp:TemplateField HeaderText="Site Owner" ItemStyle-HorizontalAlign="Center" ItemStyle-VerticalAlign="Top">
<ItemTemplate>
<asp:Panel ID="pnlNames" runat="server">
</asp:Panel>
<%-- <asp:Literal ID="NameList" runat="server" /> --%>
</ItemTemplate>
</asp:TemplateField>