WPF显示大量文本并附带行序号

目的:显示大量文本内容,并在前面添加行序号。

 技术要领:DataGrid显示内容,取消鼠标滑过、点击事件(IsHitTestVisible  = False),隐藏列表头信息和网格线。

  • 代码如下
<DataGrid Name="Result_Grid" AutoGenerateColumns="False" FontSize="14" CanUserReorderColumns="False" CanUserSortColumns="False" 
                          CanUserAddRows="False" GridLinesVisibility="None" Margin="5" Padding="5" HeadersVisibility="None" IsReadOnly="True">
    <DataGrid.RowStyle>
        <Style TargetType="DataGridRow">
            <Setter Property="IsHitTestVisible" Value="False"/>
        </Style>
    </DataGrid.RowStyle>
    <DataGrid.Columns>
        <DataGridTextColumn Header="Number" Width="*" Binding="{Binding Number}" Foreground="Gray"/>
            <DataGridTextColumn Header="FileName" Width="20*" Binding="{Binding FileName}">
                <DataGridTextColumn.ElementStyle>
                    <Style TargetType="TextBlock">
                        <Setter Property="TextWrapping" Value="Wrap"/>
                        <Setter Property="Height" Value="auto"/>
                    </Style>
                </DataGridTextColumn.ElementStyle>
            </DataGridTextColumn>
    </DataGrid.Columns>
</DataGrid>

补充说明:由于使用了MahApps.Metro控件,第一列文本是垂直居中显示的,默认样式是在顶部;尝试修改VerticalAlignment = Top没有效果。

猜你喜欢

转载自blog.csdn.net/u012366767/article/details/81536806