Выравнивание столбцов в сетке данных Silverlight - PullRequest
2 голосов
/ 27 октября 2011

Как настроить выравнивание содержимого ячейки в сетке данных Silverlight?

Подход, предложенный для WPF DataGrids на этот другой вопрос , похоже, не работает в Silverlight.

Ответы [ 3 ]

7 голосов
/ 27 октября 2011

В C #:

var rightCellStyle = new Style(typeof(DataGridCell));
rightCellStyle.Setters.Add(new Setter(
    Control.HorizontalContentAlignmentProperty,
    HorizontalAlignment.Right));
dataGrid.Columns.Add(new DataGridTextColumn {
    Binding = /* binding */,
    Header = /* header */,
    CellStyle = rightCellStyle;
});

Или в XAML ...

Добавить XMLNS:

xmlns:sdk="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Data"

Добавить этот ресурс:

<Style x:Key="RightCellStyle" TargetType="sdk:DataGridCell">
  <Setter Property="HorizontalContentAlignment" Value="Right" />
</Style>

Установить столбец следующим образом:

<sdk:DataGridTextColumn Header="Header" Binding="{Binding Binding}"
    CellStyle="{StaticResource RightCellStyle}" /> 
1 голос
/ 27 октября 2011

Просто нужно правильно выровнять DataGridCell, вот так,

    <sdk:DataGrid Margin="104,82,139,71" AutoGenerateColumns="False" ItemsSource="{Binding Collection}">
        <sdk:DataGrid.CellStyle>
            <Style TargetType="sdk:DataGridCell">
                <Setter Property="HorizontalContentAlignment" Value="Right"/>
            </Style>
        </sdk:DataGrid.CellStyle>
0 голосов
/ 27 октября 2011

Я думаю, что вы хотите HorizontalContentAlignment.Если это в стиле:

<Setter Property="HorizontalContentAlignment" Value="Center" /> 
...