0

我创建了一个数据网格:

<DataGrid x:Name="dataGrid"
                                  AutoGenerateColumns="False"
                                  Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" 
                                  IsEnabled="True"
                                  IsReadOnly="False"
                                  CanUserAddRows="False"
                                  CanUserDeleteRows="False"
                                  Loaded="dgAttfs_Loaded"
                                  RowEditEnding="dataGrid_RowEditEnding"

                                  ItemsSource="{Binding ViewModel.RowColl,Mode=TwoWay,UpdateSourceTrigger=LostFocus}"
                                  >

                            <DataGrid.Columns>
                                <DataGridTextColumn Binding="{Binding Name}" MinWidth="120" Width="Auto                                                             
                                                    Header="Name" 
                                                    />
                                <DataGridComboBoxColumn x:Name="typeColumn" MinWidth="220"                                       
                                    SelectedItemBinding="{Binding Path=Type}"                                        
                                    Header="Type"                                                          
                                                        >
                                    <DataGridComboBoxColumn.ItemsSource>
                                        <col:ArrayList>
                                            <sys:String>1</sys:String>
                                            <sys:String>2</sys:String>
                                            <sys:String>3</sys:String>
                                            <sys:String>4</sys:String>
                                            <sys:String>5</sys:String>
                                            <sys:String>6</sys:String>
                                            <sys:String>7</sys:String>
                                            <sys:String>8</sys:String>
                                        </col:ArrayList>
                                    </DataGridComboBoxColumn.ItemsSource>                                                                              
                                </DataGridComboBoxColumn>                                    
                            </DataGrid.Columns>                                                                                           
                        </DataGrid>

但是,我不明白,如何将边距设置为列文本(从左侧)。我的意思是,该文本紧贴表格(左侧)。我可以将边距设置为文本吗?

4

1 回答 1

2

您可以使用DataGridTemplateColumn创建一个自定义模板,并在其 DataTemplate 中放置一个带有所需边距的文本块。

  <DataGrid Name="dgUsers" AutoGenerateColumns="False">
    <DataGrid.Columns>
        <DataGridTextColumn Header="Name" Binding="{Binding Name}" />
        <DataGridTemplateColumn Header="Birthday">
            <DataGridTemplateColumn.CellTemplate>
                <DataTemplate>
                    <Textblock Text="{Binding Name}" BorderThickness="0" />
                </DataTemplate>
            </DataGridTemplateColumn.CellTemplate>
        </DataGridTemplateColumn>
    </DataGrid.Columns>
</DataGrid>

来源

于 2016-03-23T13:26:11.460 回答