调整列
TreeList有两种不同的列大小调整机制:
的本页末尾的例子显示两个选项的操作。
拖动调整大小
TreeList允许用户通过拖动标题单元格之间的边界来调整列的大小。
要启用列大小调整,请设置可调整大小的
参数的值真正的
.
若要防止用户调整某个列的大小,请设置其自己的参数可调整大小的= " false "
.用户仍然可以调整它周围的其他列的大小。
这里有一些关于调整大小行为的注意事项:
- 如果列
宽度
小于MinResizableWidth
当用户试图调整列的大小时,它会自动调整到最小宽度。 - 类似地,如果列
宽度
大于MaxResizableWidth
时,该列将自动锁定其最大宽度。 - 在多列标题场景,您可以设置
MinResizableWidth
或MaxResizableWidth
仅用于子列。将这些属性设置为父列将没有效果。
最适合的行高列
当启用列大小调整时,双击标题单元格之间的调整大小手柄将自动调整列宽度以适应标题、数据和页脚的内容。这将删除组件中的文本换行。
TreeList还公开了通过编程方式调整列大小以适应其内容的方法:
AutoFitColumn (string id)
-自动匹配指定的列Id
属性;AutoFitColumns (IEnumerable <字符串> id)
-一次自动匹配多个列;AutoFitAllColumns ()
自动拟合所有适用的列(例如,这个方法不影响层次结构展开/折叠列)
自动拟合特定列会保留所有其他列的当前宽度。类似于列调整,列自动拟合可以触发水平网格滚动条,或在最后一列后留下空白。
即使禁用了列大小调整,编程自动拟合也能工作。
例子
@* TreeList列大小调整和自动调整*@ @*拖动列标题之间的边界来更改列的宽度。不能调整ID列本身的大小。*@ AutoFit Name列 AutoFit Id和ParentId列 AutoFit所有列 @code {public TelerikTreeList TreeList {get;设置;} public List<员工>数据{get;设置;} private void AutoFitSingleColumn() {TreeList.AutoFitColumn("NameColumn");} private void AutoFitMultipleColumns() {var columns = new List() {"IdColumn", "ParentIdColumn"};TreeList.AutoFitColumns(列); } private void AutoFitAllColumns() { TreeList.AutoFitAllColumns(); } protected override async Task OnInitializedAsync() { Data = await GetTreeListData(); } // sample models and data generation public class Employee { public int Id { get; set; } public int? ParentId { get; set; } public string Name { get; set; } public DateTime HireDate { get; set; } } async Task> GetTreeListData() { List data = new List(); for (int i = 1; i < 15; i++) { data.Add(new Employee { Id = i, ParentId = null, Name = $"root: {i}", HireDate = DateTime.Now.AddYears(-i) }); ; for (int j = 1; j < 4; j++) { int currId = i * 100 + j; data.Add(new Employee { Id = currId, ParentId = i, Name = $"first level child {j} of {i}", HireDate = DateTime.Now.AddDays(-currId) }); for (int k = 1; k < 3; k++) { int nestedId = currId * 1000 + k; data.Add(new Employee { Id = nestedId, ParentId = currId, Name = $"second level child {k} of {i} and {currId}", HireDate = DateTime.Now.AddMinutes(-nestedId) }); ; } } } return await Task.FromResult(data); } }