1

我想将格式设置为xaml中 DataGrid的列,这些列包含双数据。

到目前为止,我在代码中做到了如下:

string format = "{0:F3}";
double nExm= 4.24;
string newExm= string.Format(format, nExm);

数据网格:

<DataGrid x:Name="DG" ItemsSource="{Binding List}" AutoGenerateColumns="False">
     <DataGrid.Columns>
          <DataGridTextColumn Header="{x:Static p:Resources.Exm}" Binding="{Binding Exm}"></DataGridTextColumn>
     </DataGrid.Columns>
 </DataGrid>

newExm 它包含在包含绑定到 DataGrid 的列表的类 X 中

X类:

私有字符串 exm;

    public string Exm
    {
        get { return exm; }
        set
        {
            exm= value;
            NotifyPropertyChanged("Exm");
        }
    }

有没有办法通过 XAML 设置格式?(我想将变量翻倍并在列上设置格式)

4

2 回答 2

1

您可以StringFormat在 XAML 中设置:

<TextBox Text="{Binding paymentAmount, StringFormat={0:C2}}"/>

是一篇很棒的文章

于 2013-02-06T12:19:06.960 回答
1

你可以使用StringFormatBinding的格式化它:

Binding="{Binding YourDoublePropertyHere, StringFormat=F3}"

如果StringFormat不能满足您所有的格式化需求(在这种情况下应该足够了),或者您有更复杂的转换逻辑,那么您可以编写一个Converter来处理数据。

于 2013-02-06T12:19:19.160 回答