如何使用 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 中做到这一点?
将 DataGrid
的 Language
属性 设置为“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>
在我的 wpf 数据网格中有一列,我想将其文本显示为数字,但按照印度格式。如果我在 xaml
中执行以下操作Binding="{Binding Path=Amt, StringFormat=N2}"
我得到的数字格式与 en-US
相同,但我希望它与 en-In
相同。
我如何在 xaml 中做到这一点?
将 DataGrid
的 Language
属性 设置为“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>