Cal*_*der 13 c# wpf formatting xaml datagrid
我在第一次涉足WPF字符串格式时遇到了困难.我希望能够在基础值为零时使用空字符串格式化数据网格中的文本框列,并将所有其他值格式化为0.000.但是,我的XAML似乎不能胜任这项工作,因为它显示所有值的空白而不仅仅是零:
<DataGridTextColumn Header="dL" Binding="{Binding Path=Value.DLHistoric, StringFormat='{}{0.000;; }'" Width="Auto" />
Run Code Online (Sandbox Code Playgroud)
我正在使用这里描述的分号运算符,并在第二个分号后面添加了一个空格来获取空字符串.
非常感谢!
更新
这样做的诀窍:
<DataGridTextColumn Header="dL" Binding="{Binding Path=Value.DLHistoric, StringFormat=0.000;;#}" Width="Auto" />
Run Code Online (Sandbox Code Playgroud)
示例 IValueConverter
[ValueConversion(typeof(string), typeof(string))]
public class StringToFeetAndInches : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
string str = value as string;
if (string.IsNullOrEmpty(str)) return str;
str = str.Insert(1, "'");
str = str + "\"";
return str;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
return 0;
}
}
<UserControl.Resources>
<NS:StringToFeetAndInches x:Key="cStringToFeetAndInches"/>
</UserControl.Resource>
<TextBlock Text="{Binding Path=Height, Converter={StaticResource cStringToFeetAndInches}}" />
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6955 次 |
| 最近记录: |