gpt4 book ai didi

c# - 如何使 DataGrid 在 WPF 中始终显示其列标题?

转载 作者:行者123 更新时间:2023-11-30 16:23:47 25 4
gpt4 key购买 nike

我正在为一个工作项目将 Silverlight 应用程序移植到 WPF,但我遇到了一个小的外观问题。在 Silverlight 应用程序中,Datagrid 的 ItemsSource 是一个最初为空的 ObservableCollection。当我第一次加载应用程序时,会显示列标题,即使 DataGrid 本身是空的。我现在正试图在 WPF 应用程序中实现同样的事情。 ObservableCollection 和 Datagrid 都是一样的,但现在列标题仅在我向 Datagrid 添加行时出现。我的数据网格的 XAML 如下:

<DataGrid ColumnWidth="196" GridLinesVisibility="All"
AutoGenerateColumns="True" IsReadOnly="True" HorizontalAlignment="Center"
Height="375" Width="775" ItemsSource="{Binding source}"
RowBackground="#A5BACA" AlternatingRowBackground="LightGray"
VerticalAlignment="Center" Name="documentsDG"
FontWeight="Normal" FontSize="13" HeadersVisibility="Column"
Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="4">
</DataGrid>

就像我说的,添加和删除行工作正常,只是我想找到一种方法使列标题在 Datagrid 中没有任何数据的情况下显示。此外,我尝试在 Datagrid 中使用空行启动应用程序,这确实使列标题出现,但看起来很乱。如果我从应用程序中删除该行,列标题会保留,但如果我在窗口加载时删除它,它们就会消失。

因此,我们将不胜感激。如果您还需要我帮助,请告诉我。

最佳答案

您正在自动生成列。如果您手动定义列,即使您的集合为空,它们也会可见。

另见: WPF Toolkit Datagrid Headers and Empty Source

关于c# - 如何使 DataGrid 在 WPF 中始终显示其列标题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11251153/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com