bahman.01 Ответов: 2

Как настроить меню столбцов в сетке kendo?


На основе рисунка по ссылке ниже:

ИЗОБРАЖЕНИЕ

Я хочу, чтобы столбцы могли быть выбраны ожидайте первого : Изменили реализацию (что его название " выбрано")

Большое вам спасибо!

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

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

2 Ответов

Рейтинг:
5

bahman.01

columns.Bound(p => p.IsSelected)
        .Width(50)
        .IncludeInMenu(false);


Мы должны работать с "IncludeInMenu"и приступил к ложный Если мы не хотим, чтобы он отображался в меню столбцов и истинный и показывал.


Рейтинг:
14

Kornfeld Eliyahu Peter

Для этого нет встроенной поддержки...
Единственный вариант, который я знаю, - это изменить меню с columnMenuInit событие сетки...
Конфигурация, методы и события Kendo UI Grid[^]

ОБНОВЛЕНИЕ
Хотя все, что я написал, правильно-основано на официальной документации, есть - совершенно недокументированная - функция, которую я нашел во время просмотра кода...
При определении столбца добавьте атрибут "меню" со значением false...

columns: [
  { field: "name", "menu": false },
  { field: "age" },
],

(Похоже, что эта опция была добавлена из оболочки MVC, но никогда не документировалась в базовом пакете Kendo UI, однако кажется безопасной для использования до тех пор, пока она существует в оболочке)


bahman.01

@Корнфельд Элиягу Питер
Как сбросить columnMenuInit после создания сетки?

Kornfeld Eliyahu Peter

Вы читали образец?
Подпишитесь на это событие и захватите меню, чем изменить его!
Что-то вроде этого:
$("#grid"). kendoGrid({
columnMenu: правда,
columnMenuInit: функция (e) {
меню, var = е.контейнер.найти(".к-меню").данных("kendoMenu");

меню.удалить("#идентификатор элемента для удаления");
}

Member 11186239

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

Но в нашем случае иногда текст пункта меню будет меняться в течение всего времени сеанса (например, "включить X", если он выключен, но "выключить X", если он впоследствии был включен).

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

bahman.01

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

bahman.01

Проблема в том, что я должен снова определить пояс со всеми функциями в javascript, в то время как у меня есть около 50 страниц, и каждая страница содержит около 40 столбцов.

bahman.01

Я сам нашел решение.