dxDataGrid - DevExtreme (DevExpress) LoadOptions - PullRequest
0 голосов
/ 09 ноября 2019

как я могу получить текущие loadOptions из DataGrid.

@(Html.DevExtreme().DataGrid<ProductViewModel>()  
      .ID("gridContainer")  
      .DataSource(new JS("ds")  
      )  
      .Scrolling(scrolling => scrolling.UseNative(true))  
      .SearchPanel(searchPanel => searchPanel  
          .Visible(true)  
          .Width(240)  
          .HighlightSearchText(true)  
          .Placeholder(@X.T("Поиск...", "Search..."))  
          .Option("disabled", "true")  
      )  
      .Height("100%")  
      .Selection(s => s.Mode(SelectionMode.Multiple).SelectAllMode(SelectAllMode.Page).ShowCheckBoxesMode(GridSelectionShowCheckBoxesMode.Always))  
      .Editing(editing =>  
      {  
          editing.RefreshMode(GridEditRefreshMode.Repaint);  
          //editing.Texts(x => { x.DeleteRow(@X.T("Удалить", "Delete")); });  
      })  
      .AllowColumnResizing(true)  
      .AllowColumnReordering(true)  
      .ColumnChooser(c => c.Enabled(true).Title(@X.T("Выбор колонок","Column chooser")))  
      .StateStoring(s => s  
          .Enabled(true)  
          .Type(StateStoringType.LocalStorage)  
          .StorageKey("storage_"  + userId + "_" + Model.Id)  
      )  
      .FilterRow(filterRow => filterRow  
          .Visible(true)  
          .ApplyFilter(GridApplyFilterMode.Auto)  
      )  
      .Columns(c =>  
      {  
          c.Add().CellTemplate(@<text>  
                                   <a href="#" onclick="showProductEditDialog('<%= data.Id %>', '@Model.Id')">@X.T("Открыть", "Open")</a>  
                                   <a href='/PriceHistory/<%= data.Id %>' target="_blank">@X.T("График", "Chart")</a>  
                                </text>).VisibleIndex(0).MinWidth(130);  
          for (int i = 0; i < columns.Count; i++)  
          {  
              var column = columns[i];  
              c.Add().DataField(column.id).Caption(column.name).Visible(column.visible).VisibleIndex(i + 1);  
          }  
      })  
      .Paging(paging => paging.PageSize(100))  
      .Pager(pager =>  
      {  
          pager.ShowPageSizeSelector(true);  
          pager.AllowedPageSizes(new List<int> {100, 250, 500, 1000});  
          pager.ShowInfo(true);  
          pager.Visible(true);  
      })  
      .RemoteOperations(true)  
      .OnEditorPreparing("optionUpdate")  
      .ShowBorders(true)  
      .MasterDetail(md =>  
      {  
          md.Enabled(true);  
          md.Template(@<text>@await Html.PartialAsync("MasterDetailProductPartial", Model.Id)</text>);  
      })  
      .OnSelectionChanged("selection_changed")  
      .OnRowPrepared("rowPrepared"))  

<div class="selected-data options">  
    <span class="caption">@X.T("Выбрано строк", "Selected Records"):</span>  
    <span id="selectedItemsContainer" style="font-size: 18px">0</span>  
    <br/>  
    <br/>  
      <div class="option">  
                @(Html.DevExtreme().Button()  
                              .ID("deleteSelectedRowsMain")  
                              .Text(@X.T("Удалить", "Delete"))  
                              .Disabled(true)  
                              .OnClick("deleteSelectedRowsMain")  
                )  
            </div>  
            <div class="option">  
                @(Html.DevExtreme().Button()  
                              .ID("deleteAllRowsMain")  
                              .Text(@X.T("Удалить все", "Delete All"))  
                              .OnClick("deleteAllRowsMain")  
                )  
            </div>  

            @if (Model.Type != PriceType.Main)  
            {  
                <div class="option">  
                    @(Html.DevExtreme().Button()  
                          .ID("copySelectedRowsMainToMain")  
                          .Text(@X.T("Скопировать в Главный Прайс", "Copy to Main Feed"))  
                          .Disabled(true)  
                          .OnClick("copySelectedRowsMainToMain")  
                          )  
                </div>  
                <div class="option">  
                    @(Html.DevExtreme().Button()  
                          .ID("copyAllRowsMainToMain")  
                          .Text(@X.T("Скопировать все в Главный Прайс", "Copy to Main Feed"))  
                          .OnClick("copyAllRowsMainToMain")  
                          )  
                </div>  
            }  
</div>  

У меня есть эта DataGrid. И я хочу, когда я нажал на deleteAllRowsMain. Я получаю текущие параметры из dataGrid (filter, searchText и т. Д.) - DataSourceLoadOptions Как я могу получить эти параметры из сетки данных для моего контроллера действий. Если я получаю dxDataGrid.state () - это недействительно. Ты можешь мне помочь?

...