Как сделать полосу прокрутки автоматически включенной или отключенной в сетке кендо?
Это мой код для создания сетки:
@{
if (Model.GenericEntityList.Count > 0)
{
@(Html.Kendo().Grid(Model.GenericEntityList).Name(screenNames.ToString()).Columns(
columns =>
{
columns.Bound(a => a.ID).Title("<input id='checkAll' type='checkbox' />").ClientTemplate("<input type='checkbox' id=#=genericCheckbox(ID,ViewFlag)#").Width(7);
columns.Bound(a => a.Name).Title(screen.ToString() + " Name").Width(93);
}
).Selectable().Scrollable().DataSource(
datasource =>
datasource.Ajax().Read(read => read.Action("CompSetHide", "Compset"))
).Events(a => a.Change("rowclick")
)
.HtmlAttributes(new {style = "height: 185px;"})
)
}
}
Как отключить и включить вертикальную полосу прокрутки, которая появляется внутри сетки кендо автоматически?
5 ответов
вы можете использовать что-то вроде этого, чтобы показать вертикальную полосу прокрутки:
$("#grid .k-grid-content").css({
"overflow-y": "scroll"
});
и это, чтобы скрыть его:
$("#grid .k-grid-content").css({
"overflow-y": "hidden"
});
здесь grid
- это идентификатор элемента сетки.
вы можете добавить .Прокручиваемый(scrollable => прокручиваемый.Virtual (true))
@{
if (Model.GenericEntityList.Count > 0)
{
@(Html.Kendo().Grid(Model.GenericEntityList).Name(screenNames.ToString()).Columns(
columns =>
{
columns.Bound(a => a.ID).Title("<input id='checkAll' type='checkbox' />").ClientTemplate("<input type='checkbox' id=#=genericCheckbox(ID,ViewFlag)#").Width(7);
columns.Bound(a => a.Name).Title(screen.ToString() + " Name").Width(93);
}
)
.Selectable()
.Scrollable(scrollable => scrollable.Virtual(true))
.DataSource(
datasource =>
datasource.Ajax().Read(read => read.Action("CompSetHide", "Compset"))
).Events(a => a.Change("rowclick")
)
.HtmlAttributes(new {style = "height: 185px;"})
)
}
}
ниже CSS должен исправить проблему и удалить вертикальную прокрутку, как описано в http://docs.telerik.com/kendo-ui/controls/data-management/grid/appearance#scrolling.
#GridID .k-grid-header
{
padding: 0 !important;
}
#GridID .k-grid-content
{
overflow-y: visible;
}
Если вы используете сетку кендо с вложенной сеткой кендо в каждой строке и прокруткой виртуальной.(используя угловые 5) случай 1: после разворачивания и прокрутки пропустить последний отсчет.
sol: используйте [detailRowHeight] = " 36 " в родительской сетке