[英]How to set margin for DataGridTextColumn and text inside it?
我創建一個DataGrid:
<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>
但是,我不明白,如何將邊距設置為列文本(從左側)。 我的意思是,該文本緊緊放在桌子上(左側)。 我可以為文字設置邊距嗎?
您可以使用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>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.