问题描述
我在MVC应用程序中使用Kendo Grid。
@(Html.Kendo().PanelBar().Name("panelbar").ExpandMode(PanelBarExpandMode.Single).Selectedindex(0).Items(panelbar =>
{
panelbar.Add().Encoded(false).Text("<div Customer </div>").Content(@<div>
@(Html.Kendo().Grid(Model).Name("grid_messageGroup").Columns(columns =>
{
columns.Bound(f => f.Title).Title("TitleName");
columns.Bound(f => f.Message).Title("MessageTitle");
columns.Bound(f => f.MessageBoard).Hidden().IncludeInMenu(false);
})
.Events(e => e.CustomEvent)
.Reorderable(reoder => reoder.Columns(true))
.HtmlAttributes(new { @class = "styleCSS" })
.sortable(sortable => sortable.AllowUnsort(false))
.ColumnMenu(columnMenu => columnMenu
.Messages(columnMenuMessages => columnMenuMessages
.sortAscending(SortAscending)
.sortDescending(SortDescending)
.Columns(Columns)
.Filter(Filter)
)
)
.Selectable().sortable().Filterable(filterable => filterable.Extra(true)
.Messages(messages => messages.Filter(Filter).Clear(Clear).Info(Info))
.Operators(operators => operators.ForString(str => str.Clear().Contains(ContainsColumnFilterOperator)).ForEnums(en => en.Clear().IsEqualTo(EqualsColumnFilterOperator)))).Resizable(resize => resize.Columns(true))
.ClientDetailTemplateId("template")
.DataSource(dataSource => dataSource.Ajax().ServerOperation(false))
.Filterable(filterable => filterable.Extra(false).Operators(operators => operators.ForString(str => str.Clear().Contains(ContainsColumnFilterOperator))
.ForDate(d => d.Clear().IsEqualTo(EqualsColumnFilterOperator)
.IsLessthan(LessthanColumnFilterOperator)
.IsGreaterThan(GreaterThanColumnFilterOperator))
.ForEnums(en => en.Clear().IsEqualTo(EqualsColumnFilterOperator))))
.Pageable(pager => pager
.Numeric(true)
.Info(true)
.PrevIoUsNext(true)
.Refresh(false)
.PageSizes(new[] { 6,25,50,100 })
.Messages(pagerMessages => pagerMessages
.display(KendoGrid.display)
.Empty(KendoGrid.EmptyListView)
.F@R_404_6447@t(KendoGrid.F@R_404_6447@tPageText)
.ItemsPerPage(KendoGrid.ItemsPerPage)
.Last(KendoGrid.LastPageText)
.Next(KendoGrid.NextPageText)
.PrevIoUs(KendoGrid.PrevIoUsPageText)
.MorePages(KendoGrid.MorePagesText)
.AllPages(KendoGrid.AllPages)
)
)
.norecords(GridnorecordsFound))
</div>);
panelbar.Add().Encoded(false).Text("<div> PublicmessageAddCustomers </div>").Content(@<div>
@(Html.Kendo().Grid(Model).Name("grid_recipient").Columns(columns =>
{
columns.Bound(f => f.Name).Title("CustomName");
columns.Bound(f => f.CustomName).Title("CustomTitle");
})
.HtmlAttributes(new { @class = "CSsstyleClass" })
.ColumnMenu(columnMenu => columnMenu
.Messages(columnMenuMessages => columnMenuMessages
.sortAscending(SortAscending)
.sortDescending(SortDescending)
.Columns(Columns)
.Filter(Filter)
)
)
.Reorderable(reoder => reoder.Columns(true))
.Selectable()
.sortable()
.Scrollable()
.Resizable(resize => resize.Columns(true))
.Pageable(pager => pager
.Numeric(true)
.Info(true)
.PrevIoUsNext(true)
.Refresh(false)
.PageSizes(new[] {6,100})
.Messages(pagerMessages => pagerMessages
.display(KendoGrid.display)
.Empty(KendoGrid.EmptyListView)
.F@R_404_6447@t(KendoGrid.F@R_404_6447@tPageText)
.ItemsPerPage(KendoGrid.ItemsPerPage)
.Last(KendoGrid.LastPageText)
.Next(KendoGrid.NextPageText)
.PrevIoUs(KendoGrid.PrevIoUsPageText)
.MorePages(KendoGrid.MorePagesText)
.AllPages(KendoGrid.AllPages)
)
)
.norecords(GridnorecordsFound)
.DataSource(dataSource => dataSource.Ajax().ServerOperation(false))
.Filterable(filterable => filterable.Extra(false)
.Messages(messages => messages.Filter(Filter).Clear(Clear).Info(Info))
.Operators(operators => operators.ForString(str => str.Clear().Contains(ContainsColumnFilterOperator)).ForEnums(en => en.Clear().IsEqualTo(EqualsColumnFilterOperator)))).Resizable(resize => resize.Columns(true)))
</div>);
}))
一切正常,除了
-
直到我按F12键(这是很奇怪的行为)后,UI上才会显示
- “ 每页项目”文本。
- {0}-{2}中的{1}未显示在用户界面上
- 在浏览器上呈现页面时,pagesize下拉列表显示1,2,3 ..但不是我的pageSize值(6,100),当我按F12键时,页面大小下拉列表正确显示。
有人可以帮我吗?
解决方法
在面板中使用网格时,我也遇到了同样的问题。当您按F12键时,您将在窗口上触发调整大小,这也会导致寻呼机调整大小并看起来像您期望的那样。
我当前使用的修复方法是调用网格的寻呼机控件上的resize
函数。
<script>
var grid = $("#grid_messageGroup").data("kendoGrid");
grid.pager.resize();
</script>
一个好地方叫它应该来自网格的DataBound
事件。