如何在IValueConverter中设置DateTime格式并返回字符串值?

时间:2012-07-26 09:13:16

标签: c# ivalueconverter

我想在IValueConverter中使用特定格式并返回一个字符串。像"MMMyyyy"我怎么能得到这个?

public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
    var item = (DateTime)value;
    if (item != null)
    {
        return item.ToString();
    }
    return null;
}

4 个答案:

答案 0 :(得分:2)

请尝试以下

public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
     var item = (DateTime)value;
     if (item != null)
     {
         return item.ToString("MMMyyyy");
     }
     return null;
}

答案 1 :(得分:2)

你真的需要IValueConverter吗? 如果您希望绑定在WPF中显示具有特定格式的数据绑定DateTime,则可以使用StringFormat

Binding属性

Article about StringFormat

答案 2 :(得分:0)

您只需要将格式ToString添加为参数

 return item.ToString("MMyyyy");

答案 3 :(得分:0)

您可以对ToString() - ToString(字符串格式)使用DateTime重载。因此 - 你可以写:

public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
    var item = (DateTime)value;
    if (item != null)
    {
        return item.ToString("MMMyyyy");
    }
    return null;
}

有关详细信息,请查看此链接:

http://msdn.microsoft.com/en-us/library/az4se3k1.aspx