dot*_*NET 1 .net c# wpf datagrid
有没有办法将自动生成的列的宽度增加固定量?我正在尝试执行以下操作,但它不起作用:
private void dgvMailingList_AutoGeneratingColumn(object sender, DataGridAutoGeneratingColumnEventArgs e)
{
e.Column.Width += 30;
}
Run Code Online (Sandbox Code Playgroud)
Evene.Column.Width = e.Column.Width + 30;
不起作用,因为 的默认值UnitType
是Width
,Auto
因此e.Column.Width
返回1.0
而不是实际的像素宽度。UnitType
它本身是只读的,所以也不能使用它。ActualWidth
也设置为事件0
中AutoGeneratingColumn
。这样做的正确方法是什么?
AutoGeneratingColumns
引发事件时,列尚未在 UI 上呈现。因此实际宽度为 0.0。
使用Loaded
事件循环列并按所需的常数因子增加宽度。
private void dataGrid_Loaded(object sender, RoutedEventArgs e)
{
foreach (var column in ((DataGrid)sender).Columns)
{
column.Width = new DataGridLength(column.ActualWidth + 30);
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1418 次 |
最近记录: |