XamDataGrid: у меня есть два столбца (отображающие десятичные данные): я хочу один со знаком «$», а другой без. Как? - PullRequest
2 голосов
/ 04 марта 2011

У меня есть два decimal столбца типа данных;Я хочу, чтобы они отображались так:

  • Столбец 1 (ColumnWithNoDollarSign) будет иметь знак no"$" перед значениями
  • Столбец 2 (ColumnWithDollarSign) будет иметь знак "$" перед значениями

Вот как выглядит мой XAML:

<ig:XamDataGrid Name="xamDataGrid"                        
                IsGroupByAreaExpanded="False"
                DataSource="{Binding Rows, Mode=OneWay}">
    <ig:XamDataGrid.Resources>
        <Style TargetType="{x:Type Editors:XamNumericEditor}">
            <Setter Property="HorizontalContentAlignment" Value="Left" />
            <Setter Property="FontSize" Value="12" />
        </Style>
        <Style TargetType="{x:Type Editors:XamCurrencyEditor}">
            <Setter Property="HorizontalContentAlignment" Value="Left" />
            <Setter Property="FontSize" Value="12" />
        </Style>
    </ig:XamDataGrid.Resources>
    <ig:XamDataGrid.FieldLayoutSettings>
        <ig:FieldLayoutSettings AutoGenerateFields="False"/>
    </ig:XamDataGrid.FieldLayoutSettings>
    <ig:XamDataGrid.FieldLayouts>
        <ig:FieldLayout Key="layout">
            <ig:Field Name="ColumnWithNoDollarSign" Label="Column 1"/>
            <ig:Field Name="ColumnWithDollarSign" Label="Column 1"/>
        </ig:FieldLayout>
    </ig:XamDataGrid.FieldLayouts>
</ig:XamDataGrid>

Проблема, как я ее вижуявляется то, что стиль XamCurrencyEditor, который я применяю, переопределяет все столбцы decimal.Я только хочу переопределить один из столбцов decimal.Как бы я поступил так?

1 Ответ

5 голосов
/ 07 марта 2011

Представляет ли XamNumericEditor формат без символа $?Если да, то можете ли вы просто указать стиль, используемый каждым столбцом, например:

<ig:XamDataGrid.FieldLayouts>
    <ig:FieldLayout Key="layout">
        <ig:Field Name="ColumnWithNoDollarSign" Label="Column 1" Style="{StaticResource XamNumericEditor}"/>
        <ig:Field Name="ColumnWithDollarSign" Label="Column 1" Style="{StaticResource XamCurrencyEditor}"/>
    </ig:FieldLayout>
</ig:XamDataGrid.FieldLayouts>

Хотя я бы порекомендовал перенести всю информацию о стиле в один файл, такой как App.xaml, а не повторноопределяя его в нескольких местах.

...