如何使用 CultureInfo "en-In" 将数据网格列与 StringFormat 绑定为 N2?

How to bind a datagrid column with StringFormat as N2 with CultureInfo "en-In"?

在我的 wpf 数据网格中有一列,我想将其文本显示为数字,但按照印度格式。如果我在 xaml

中执行以下操作

Binding="{Binding Path=Amt, StringFormat=N2}"

我得到的数字格式与 en-US 相同,但我希望它与 en-In 相同。

我如何在 xaml 中做到这一点?

DataGridLanguage 属性 设置为“en-IN”:

<DataGrid ... Language="en-IN">
    <DataGrid.Columns>
        <DataGridTextColumn Binding="{Binding Path=Amt, StringFormat=N2}" />
    </DataGrid.Columns>
</DataGrid>

如果您对不同的列使用不同的格式,则将 DataGridTextColumn 替换为 DataGridTemplateColumn

<DataGridTemplateColumn>
    <DataGridTemplateColumn.CellTemplate>
        <DataTemplate>
            <TextBlock Text="{Binding Amt, StringFormat=N2}" Language="en-IN" />
        </DataTemplate>
    </DataGridTemplateColumn.CellTemplate>
    <DataGridTemplateColumn.CellEditingTemplate>
        <DataTemplate>
            <TextBox Text="{Binding Amt, StringFormat=N2}" Language="en-IN" />
        </DataTemplate>
    </DataGridTemplateColumn.CellEditingTemplate>
</DataGridTemplateColumn>