Мне нужна помощь с чем-то, это может быть немного сложно.Я вызываю WebMethod, который делает что-то из файла js.Он также вызывает некоторые функции, которые находятся в классе внутри кода приложения.
В этом классе в app_code я получаю элемент управления GridView, который находится на моей странице, и мне нужно обновить его, поэтому я делаю это:
ActiveGridView.DataSource = (ActiveDataTable).DefaultView;
ActiveGridView.DataBind();
Приведенное выше работает нормально, когда я вызываюработает в app_code из обычной функции, но не обновляет сетку, когда я вызываю ее в WebMethod.
Есть идеи, как решить эту проблему?
Обратите внимание, что я не могу заставить WebMethod вернуть данные, а затем на стороне клиента обновить сетку.
Отредактировано
На самом деле яЯ использую updatePanel, мой код aspx выглядит следующим образом:
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:GridView ID="MappedDataGrid" runat="server" CssClass="pipesTbl">
</asp:GridView>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="btnRemove" EventName="Click" />
</Triggers>
</asp:UpdatePanel>
И снова это прекрасно работает, когда я вызываю заполнить сетку из события на странице, но затем, когда я вызываю его после вызова webMethodsкласс в app_code, который является супругом для заполнения сетки, он не пополняется. Отредактировано снова
Я думаю, что проблема с этой строкой:
<Triggers>
<asp:AsyncPostBackTrigger ControlID="btnRemove" EventName="Click" />
</Triggers>
Я попытался изменить это на:
<Triggers>
<asp:AsyncPostBackTrigger ControlID="MappedDataGrid" EventName="DataBinding" />
</Triggers>
Но не сделалне работает, я, вероятно, что-то упустил, и, поскольку это все для меня ново, я не знал, что делать.
Что мне теперь делать, чтобы все заработало, как вы сказали?