Kendo ui KendoUI网格自动拟合列,最大/最小宽度
我正在使用autoFitColumns方法,如下所述: 但在某些情况下,该方法会将列的大小调整得太小(例如,当网格中只有1-2列时)或太大(当列包含长文本且不需要实际显示所有列时)Kendo ui KendoUI网格自动拟合列,最大/最小宽度,kendo-ui,kendo-grid,kendo-ui-angular2,Kendo Ui,Kendo Grid,Kendo Ui Angular2,我正在使用autoFitColumns方法,如下所述: 但在某些情况下,该方法会将列的大小调整得太小(例如,当网格中只有1-2列时)或太大(当列包含长文本且不需要实际显示所有列时) 自动调整大小时有没有办法设置最大/最小宽度?据我所知,这不是内置于网格中的;但是,您可以通过更新列选项来执行此操作: var FitCols = function(){ var grid = $("#grid").data("kendoGrid"); if (grid) { //copy curre
自动调整大小时有没有办法设置最大/最小宽度?据我所知,这不是内置于网格中的;但是,您可以通过更新列选项来执行此操作:
var FitCols = function(){
var grid = $("#grid").data("kendoGrid");
if (grid) {
//copy current column options from the grid
var newOptions = $.extend({}, grid.getOptions().columns);
var minW = 80; //minimum column width
var maxW = 300; //maximum column width
for (var i = 0; i < grid.columns.length; i++) {
grid.autoFitColumn(i);
//after autofit, limit to max and min width
var curW = grid.columns[i].width;
var actualW = Math.max(curW, minW); //min check
actualW = Math.min(actualW, maxW); //max check
newOptions[i].width = actualW + "px";
}
grid.setOptions({ columns: newOptions });
}
};
var FitCols=function(){
var grid=$(“#grid”).data(“kendoGrid”);
如果(网格){
//从轴网复制当前列选项
var newOptions=$.extend({},grid.getOptions().columns);
var minW=80;//最小列宽
var maxW=300;//最大列宽
对于(var i=0;i
这段代码在自动调整大小之前从网格中获取列选项。然后迭代每个列,调用autosize,根据最大值和最小值检查新大小,将新大小写入复制的列选项,最后将这些选项写回网格
下面是一个dojo演示:
请记住,如果您有许多列,自动调整大小的速度将以指数级的速度减慢…据我所知,这并不是内置于网格中的;但是,您可以通过更新列选项来执行此操作:
var FitCols = function(){
var grid = $("#grid").data("kendoGrid");
if (grid) {
//copy current column options from the grid
var newOptions = $.extend({}, grid.getOptions().columns);
var minW = 80; //minimum column width
var maxW = 300; //maximum column width
for (var i = 0; i < grid.columns.length; i++) {
grid.autoFitColumn(i);
//after autofit, limit to max and min width
var curW = grid.columns[i].width;
var actualW = Math.max(curW, minW); //min check
actualW = Math.min(actualW, maxW); //max check
newOptions[i].width = actualW + "px";
}
grid.setOptions({ columns: newOptions });
}
};
var FitCols=function(){
var grid=$(“#grid”).data(“kendoGrid”);
如果(网格){
//从轴网复制当前列选项
var newOptions=$.extend({},grid.getOptions().columns);
var minW=80;//最小列宽
var maxW=300;//最大列宽
对于(var i=0;i
这段代码在自动调整大小之前从网格中获取列选项。然后迭代每个列,调用autosize,根据最大值和最小值检查新大小,将新大小写入复制的列选项,最后将这些选项写回网格
下面是一个dojo演示:
请记住,如果有许多列,自动调整大小的速度将以指数级的速度减慢