Anstatt ein Spaltenmenü auf jeder der Spalten in meinem Raster anzuzeigen, möchte ich ein einzelnes Menü über dem Raster, mit dem ich Spalten ein- / ausblenden und Spalten einfrieren / aufheben kann.
Siehe Referenzbild, um eine Idee zu erhalten.
Antworten:
2 für die Antwort № 1Kendo UI Framework hat KendoColumnMenu Widget. Unter der Annahme, dass "Gitter" ein Gitterelement ist, haben wir: HTML (fa -... sind font-awesome Styles):
<a class="btn btn-icon grid-column-menu fa fa-columns" href="#" title="Manage columns."></a>
JS:
var $gridColumnMenuButton = $(".grid-column-menu").kendoColumnMenu({
filterable: false,
sortable: false,
dataSource: grid.data("kendoGrid").dataSource,
columns: true,
owner: grid.data("kendoGrid"),
});
$gridColumnMenuButton.on("click", function(e) {
$(this).find(".k-header-column-menu").click();
return false;
});
CSS:
.grid-column-menu .k-header-column-menu {
height: 35px;
visibility: hidden;
position: absolute;
left: 0; }
Dadurch können Sie Spalten ein- und ausblenden.