如何冻结WPF DataGrid的第一列

时间:2013-08-31 09:23:33

标签: c# wpf wpfdatagrid freeze freezable

我有一个WPF DataGrid ..

我想在水平滚动时冻结该WPF DataGrid的第一列..

我的代码是:

<DataGrid Name="dgQuestionTemplate" HorizontalAlignment="Left" Grid.Row="1" Width="870" HorizontalScrollBarVisibility="Auto" IsReadOnly="False">

            <DataGrid.Columns>                    
                <DataGridTextColumn Binding="{Binding ExamDate}" Header="Date" IsReadOnly="True" Width="90" />
                <DataGridTextColumn Binding="{Binding ExamName}" Header="Test Name" IsReadOnly="True" Width="195" />
                <DataGridTextColumn Binding="{Binding Batch}" Header="Batch" IsReadOnly="True" Width="100" />
                <DataGridTextColumn Binding="{Binding ExamTime}" Header="    Count Down  [Days: hr: min: sec]"  IsReadOnly="True" Width="*" />
            </DataGrid.Columns>

</DataGrid>

1 个答案:

答案 0 :(得分:41)

设置Datagrid的FrozenColumnCount = "1"

<DataGrid FrozenColumnCount ="1" Name="dgQuestionTemplate" HorizontalAlignment="Left" Grid.Row="1" Width="870" HorizontalScrollBarVisibility="Auto" IsReadOnly="False">
  

冻结列是始终显示但不能显示的列   滚动了可见性。冷冻柱总是最左边的   显示顺序中的列。您无法将冻结列拖入   一组未冻结的列或将未冻结的列拖到该组中   冷冻柱。

DataGrid.FrozenColumnCount