返回重新格式化的约束日期

时间:2014-06-11 10:05:23

标签: c# xaml

我在转换绑定日期值/字段时遇到问题。数据库中的字段具有VARCHAR(12)的字段类型,格式为“yyyy-MM-dd”。在XAML视图上绑定的对象也是DatePicker。

当我拉入初始字段时 - 我的Binding Converter似乎有效(见下文):

string MyString = value.ToString();
DateTime dt = DateTime.ParseExact(MyString, "yyyy-MM-dd",CultureInfo.InvariantCulture);
return dt;

然而,我似乎无法将其转换回来。在帮助下,我正在尝试以下方面的变化 - 但到目前为止没有任何运气。

DateTime dt = DateTime.ParseExact(value.ToString(), "yyyy'|'MM'|'dd", CultureInfo.InvariantCulture);
return dt.ToShortDateString();

工作更新 - 我想要的时间有点长,但这似乎可以解决问题:

    try
    {
        DateTime dt;
        string strValue = value.ToString();

        if (DateTime.TryParseExact(strValue, "dd/MM/yyyy HH:mm:ss", CultureInfo.InvariantCulture, DateTimeStyles.None, out dt))
        {
            return dt.ToString("yyyy-MM-dd");
        }
        else
        {
            return DateTime.MinValue;
        }
    }
    catch (Exception ex)
    {
        return DateTime.MinValue;
    }

1 个答案:

答案 0 :(得分:0)

尝试msdn doc

中提到的DateTime.ToString()方法