问题描述
我正在将Telerik UI用于ASP.NET Core。网格的列是动态添加的。
@(Html.Kendo().Grid<dynamic>()
.Name("myGrid")
.Columns(columns =>
{
for (int i = 0; i < Model.GridColumns.Count; i++)
{
var field = Model.GridColumns[i];
var col = columns.Bound(field.FieldName).Title(field.displayName).sortable(true);
}
})
.AutoBind(false)
.Pageable()
.Resizable(resize => resize.Columns(true))
.Scrollable()
.sortable(sortable => sortable
.AllowUnsort(true)
.sortMode(GridSortMode.MultipleColumn))
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(50)
.ServerOperation(true)
.Model(model =>
{
model.Id("ID");
var f = model.Field("ID",typeof(int));
f.Editable(false);
})
.Read("Search","Documents"))
)
除了2个已知列Error
和Notes
之外,我想根据列的内容设置列宽。我想将这两列的宽度设置为800px,所有其他列应根据内容自动调整。
var kendoGrid = $("#myGrid").data('kendoGrid');
kendoGrid.bind("dataBound",function () {
for (var i = 0; i < this.columns.length; i++) {
if (this.columns[i].field == "Error" || this.columns[i].field == "Notes") {
this.columns[i].Width = "800"; // tried 800px also
}
else {
this.autoFitColumn(i);
}
}
});
问题
800px宽度未设置为Error
和Notes
列。所有其他自动调整栏将根据预期内容进行调整。我尝试设置800
和800px
。
是否可以自动调整某些列并为其余列具有硬编码的宽度?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)