MalathiMals Ответов: 2

Модель всплывающее расширитель


Я реализовал модальное всплывающее окно ajax для некоторых деталей, показывающих цель. В этом всплывающем окне я реализовал сетку. теперь то, что является проблемой, означает, что когда я нажимаю кнопку подкачки и сортировки во всплывающем окне, будет скрыто. как восстановить эту проблему

Что я уже пробовал:

<div class="table-responsive">
                               <asp:UpdatePanel runat="server">
                                   <ContentTemplate>
                                       <asp:GridView runat="server" Width="80%" PageSize="5" ID="presenteruploadfilegrid" AutoGenerateColumns="false" SkinID="gridviewSkin"
                                           AllowPaging="true" AllowSorting="true" OnRowDataBound="presenteruploadfilegrid_RowDataBound" OnDataBound="presenteruploadfilegrid_DataBound"
                                           OnRowCommand="presenteruploadfilegrid_RowCommand" OnPageIndexChanging="presenteruploadfilegrid_PageIndexChanging" OnSorting="presenteruploadfilegrid_Sorting">
                                           <Columns>
                                               <asp:TemplateField HeaderText="File Type" SortExpression="DocumentTypeDesc" ItemStyle-Width="20%">
                                                   <ItemTemplate>
                                                       <asp:Label runat="server" BorderStyle="None" Width="100%" Text='<%#Eval("DocumentTypeDesc") %>'></asp:Label>
                                                   </ItemTemplate>
                                               </asp:TemplateField>
                                               <asp:TemplateField HeaderText="File Name" SortExpression="FileName" ItemStyle-Width="40%">
                                                   <ItemTemplate>
                                                       <asp:Label runat="server" ID="lblFileName" BorderStyle="None" Width="100%" Text='<%#Eval("FileName") %>'></asp:Label>
                                                   </ItemTemplate>
                                               </asp:TemplateField>
                                               <asp:TemplateField HeaderText="Uploaded Date" SortExpression="CreatedDate" ItemStyle-Width="20%">
                                                   <ItemTemplate>
                                                       <asp:Label runat="server" BorderStyle="None" Width="90" Text='<%#Eval("CreatedDate") %>'></asp:Label>
                                                   </ItemTemplate>
                                               </asp:TemplateField>
                                               <asp:TemplateField ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Center">
                                                   <ItemTemplate>
                                                       <asp:Button runat="server" Width="100%" ID="btnview" CssClass="btn btn-primary btn-xs" Text="View" CommandName="View" />
                                                       <asp:HiddenField ID="HiddenDocumentID" Value='<%#Eval("UserDocumentId") %>' runat="server" />
                                                   </ItemTemplate>
                                               </asp:TemplateField>
                                           </Columns>
                                           <PagerStyle CssClass="pageStyle" />
                                           <PagerSettings Mode="NumericFirstLast" PageButtonCount="5" />
                                       </asp:GridView>
                                       <asp:HiddenField ID="HiddenSortingStatus" runat="server" />
                                       <asp:Panel runat="server" ID="panelpagination" Visible="false" CssClass="paging_div">
                                           <asp:Label ID="lblpagetotal" runat="server" Visible="false" />
                                       </asp:Panel>
                                   </ContentTemplate>
                                   <Triggers>
                                       <asp:PostBackTrigger ControlID="presenteruploadfilegrid" />
                                   </Triggers>
                               </asp:UpdatePanel>
                           </div>
                           <asp:Button runat="server" CssClass="pull-right btn btn-primary" ID="close" Text="Close" Style="margin-bottom:10px;" OnClick="close_Click" />

                       </div>

2 Ответов

Рейтинг:
2

Abrar Kazi

I assume u r calling serverside events for paging and sorting. 
Call paging and sorting using Ajax and i should not hide ur popup.


MalathiMals

можете ли вы привести какие-либо примеры

Vincent Maverick Durano

Вы не можете вызывать серверные события gridview через AJAX. Возможно, вам придется создать свою собственную сетку на стороне клиента, чтобы иметь возможность добавить функции подкачки и сортировки на стороне клиента. И да, вы должны иметь дело с данными через AJAX.

Рейтинг:
16

Vincent Maverick Durano

используйте поддельную / фиктивную кнопку в качестве целевого элемента управления для вашего модального всплывающего окна. Просто установите style= "display:none", чтобы он стал невидимым. Например:

<asp:linkbutton id="lnkTarget" runat="server" style="displaye:none;" xmlns:asp="#unknown" />
<asp:panel id="pnlPopUp" runat="server" style="display:none" cssclass="modal" xmlns:asp="#unknown">
    Your content
</asp:panel>
<asp:modalpopupextender id="ModalPopupExtender1" runat="server" targetcontrolid="lnkTarget" popupcontrolid="pnlPopUp" backgroundcssclass="modal-bg" xmlns:asp="#unknown">
</asp:modalpopupextender>


Тогда звоните:
ModalPopUpExtender1.Show();


В том случае,когда вы показываете модальное, на пейджинге и на Сортировке событие.


MalathiMals

да, я реализовал вот так. в этой панели я использовал вид сетки. когда я нажимаю сортировка подкачки только это всплывающее окно скрывается

Vincent Maverick Durano

Вот почему вам нужно показать всплывающее окно После сортировки или подкачки, вызвав Modal1. Show();

MalathiMals

Я. Это работа, но каждый раз принимаю нагрузку на работу. когда я нажимаю сортировка одного столбца это идет одна минута а затем приходит

Vincent Maverick Durano

это нормально, так как сервер подкачки / сортировки будет Тиггер полный обратный отсчет, чтобы воссоздать страницу.

Вы можете использовать LINQ для выполнения пользовательской подкачки. LINQ имеет мощные операторы Take() и Skip (), которые позволяют пропустить определенное количество строк и взять только ограниченное количество строк с этой точки. Например, мы устанавливаем размер страницы равным 10, что означает, что он будет выбирать и отображать только 10 записей на странице, а не выбирать все результаты из базы данных. Например, см.: http://www.c-sharpcorner.com/UploadFile/8c19e8/implement-custom-paging-in-gridview-with-linq/

Если вы хотите избежать попадания в базу данных при подкачке страниц, то вы можете применить кэширование данных, чтобы ссылаться на данные из кэша и использовать эти данные для выполнения паганации.