我有一个MudBlazor DataGrid,其中一些单元格有很长的文本字符串.默认情况下,MudBlazor会将列宽设置为最长单元格值的长度.我希望默认的列宽是一个特定的宽度,如100px,如果需要,用户可以调整列的大小,以查看额外的文本.我也不希望文本换行.这就是它在Excel中的工作方式.我正在努力想办法做到这一点.
我试过使用CellStyle和HeaderStyle,但运气不是很好.我制作了一个基本的DataGrid来显示这个问题.下面是我的代码:
<div style="width: 50vw;">
<MudDataGrid T="Person" Items="@People" ColumnResizeMode="ResizeMode.Container">
<Columns>
<PropertyColumn Property="x => x.Name" CellStyle="width: 100px; overflow-x: hidden; white-space: nowrap;" />
<PropertyColumn Property="x => x.State" CellStyle="width: 100px; overflow-x: hidden; white-space: nowrap;" />
<PropertyColumn Property="x => x.Age" CellStyle="width: 100px; overflow-x: hidden; white-space: nowrap;" />
</Columns>
</MudDataGrid>
</div>
@code {
private IEnumerable<Person> People = new List<Person>
{
new Person("Brady", 25, "Florida"),
new Person("Tim", 32, "Minnesota"),
new Person("Derek", 51, "Utahqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq"),
new Person("Ben", 27, "Wisconsin"),
new Person("Sam", 34, "Alaska")
};
}
Here is what the output looks like for the above code:个
在Excel中,列可以具有设置的宽度.如果单元格中的文本长度超过列宽,它就会被截断.用户需要调整列宽才能看到附加文本.这就是我希望在我的DataGrid中做的事情.
Here is what it looks like in Excel and what I'm trying to do.个