Я только начинаю использовать панели обновления в своих решениях, поэтому я медленно знакомлюсь с ними. У меня есть GridView, у которого есть кнопка удаления, связанная с каждой отображаемой строкой. Когда я нажимаю кнопку удаления, это событие OnClick должно отображать панель, которая действует как полумодальное окно подтверждения (сделанное как лайтбокс), чтобы удалить запись, связанную с соответствующей строкой. Однако, когда я нажимаю кнопку, панель не отображается, потому что все это находится в панели обновления. Прекрасно работает без панели обновленияКнопка Inside Gridview Inside Update Panel Не работает
Любые идеи?
Вот усеченная версия моего кода:
<script runat="server">
Protected Sub LinkButtonDelete_Click(ByVal Sender As Object, ByVal e As EventArgs)
PanelConfirmMessage.Visible = True
PanelConfirmLightBox.Visible = True
End Sub
'.... note there is other code that handles the delete ...
</script>
<html>
<head"></head>
<body>
<form id="form1" runat="server">
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:GridView ID="GridView1" runat="server" DataSourceID="DataSourceGridView1">
<Columns>
<asp:templatefield HeaderText="Name">
<ItemTemplate><asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("MyFieldName") %>' /></ItemTemplate>
</asp:templatefield>
<asp:TemplateField HeaderText="Delete">
<ItemTemplate><asp:LinkButton ID="LinkButtonDelete" runat="server" OnClick="LinkButtonDelete_Click"></asp:LinkButton></ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="DataSourceGridView1" runat="server" ConnectionString="<%$ ConnectionStrings:MyString %>" SelectCommand="MySelectCommand" SelectCommandType="StoredProcedure"></asp:SqlDataSource>
</ContentTemplate>
</asp:UpdatePanel>
<asp:Panel runat="server" ID="PanelConfirmMessage" Visible="false">
<p>Are you sure you want to continue?</p>
<asp:Button runat="server" ID="ButtonYes" Text="Yes" OnClick="ButtonYes_Click" />
<asp:Button runat="server" ID="ButtonNo" Text="No" OnClick="ButtonNo_Click" />
</asp:Panel>
<asp:Panel runat="server" id="PanelConfirmLightBox" Visible="false"></asp:Panel>
</form>
</body>
</html>
Вы имеете в виду, когда вы нажимаете на кнопку, все UpdatePanel изображении исчезнут? наряду с сеткой, кнопками и т. д.? – RelatedRhymes
Нет. Там находится панель обновления. Все выглядит одинаково. Все, что я имел в виду, это то, что моя панель подтверждения не появляется. Когда вы нажимаете ссылку «Удалить», ничего не происходит, и страница остается как есть. Кнопка «Ссылка» не вызывает действие для отображения панели. Во всяком случае, я нашел ответ ниже. – ptownbro