返回重新格式化并绑定的日期

本文关键字:绑定 日期 格式化 返回 | 更新日期: 2023-09-27 18:08:19

我在转换绑定日期值/字段时遇到麻烦。数据库中的字段类型为VARCHAR(12),格式为"yyyy-MM-dd"。它在XAML视图上绑定的对象是一个DatePicker。

当我拉入初始字段-我的绑定转换器似乎工作(见下文):

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;
    }

返回重新格式化并绑定的日期

试试这里提到的DateTime.ToString()方法msdn doc