我在WPF中有一个包含多语言列标题的DataGrid。最初创建DataGrid时,列的大小将自动调整为正确的宽度。当用户更改语言时,列标题不再适合。我想让他们重新调整。我在DataGrid上尝试了UpdateLayout和InvalidateParentLayout。两个都不管用。
<DataTemplate x:Key="HeaderIDTemplate">
<TextBlock Text="{Binding ElementName=Library_UC, Path=DataContext.Language_Library.ID}"/>
</DataTemplate>
<DataGridTemplateColumn HeaderTemplate="{StaticResource HeaderIDTemplate}" CellTemplate="{StaticResource IDTemplate}" Width="Auto"/>
1条答案
按热度按时间bvhaajcl1#
当您更改语言时,可能会向服务器发送一个请求,因此您有一个由语言更改触发的事件处理程序。您的数据也可能被刷新。所以,让我们循环列并设置它们的大小:
DataGridView.AutoResizeColumn可能也有帮助。