C# 无法将类型System.DateTime隐式转换为System.DateTime?存在显式转换。你缺演员吗?

C# 无法将类型System.DateTime隐式转换为System.DateTime?存在显式转换。你缺演员吗?,c#,datetime,datepicker,C#,Datetime,Datepicker,关于这篇文章,我已经问了一些问题,但是我仍然不能回答并解决这个问题 private void done_Click(object sender, EventArgs e) { if (datePicker != null) Items.Over50Date = datePicker.Value; NavigationService.GoBack(); } datePicker是日期选择器工具的名称。超过50年的时间很可能

关于这篇文章,我已经问了一些问题,但是我仍然不能回答并解决这个问题

private void done_Click(object sender, EventArgs e)
    {
        if (datePicker != null)
            Items.Over50Date = datePicker.Value;

        NavigationService.GoBack();
    }
datePicker是日期选择器工具的名称。超过50年的时间很可能是

public static DateTime Over50Date;

当我将我的datePicker.Value分配给Over50Date时,我得到了错误,无法将类型System.DateTime转换为System.DateTime。我哪里做错了?

Systme.DateTime,而System.DateTime?表示可为空的DateTime对象,当然,这两个对象不相同

你应该将你的日期转换为一个日期时间,这个日期应该是空的

[更新]:

注意:它假设datePicker.value是System.DateTime? 如果不是,您的日期存储在日期选择器的哪个属性中

请尝试以下代码:

private void done_Click(object sender, EventArgs e)
{
    if (datePicker != null)
    {
        if (datePicker.Value != null) 
        {
            Items.Over50Date = Convert.ToDateTime(datePicker.Value);
        }
    }

    NavigationService.GoBack();
}

Systme.DateTime,而System.DateTime?表示可为空的DateTime对象,当然,这两个对象不相同

你应该将你的日期转换为一个日期时间,这个日期应该是空的

[更新]:

注意:它假设datePicker.value是System.DateTime? 如果不是,您的日期存储在日期选择器的哪个属性中

请尝试以下代码:

private void done_Click(object sender, EventArgs e)
{
    if (datePicker != null)
    {
        if (datePicker.Value != null) 
        {
            Items.Over50Date = Convert.ToDateTime(datePicker.Value);
        }
    }

    NavigationService.GoBack();
}

Systme.DateTime,而System.DateTime?表示可为空的DateTime对象,当然,这两个对象不相同

你应该将你的日期转换为一个日期时间,这个日期应该是空的

[更新]:

注意:它假设datePicker.value是System.DateTime? 如果不是,您的日期存储在日期选择器的哪个属性中

请尝试以下代码:

private void done_Click(object sender, EventArgs e)
{
    if (datePicker != null)
    {
        if (datePicker.Value != null) 
        {
            Items.Over50Date = Convert.ToDateTime(datePicker.Value);
        }
    }

    NavigationService.GoBack();
}

Systme.DateTime,而System.DateTime?表示可为空的DateTime对象,当然,这两个对象不相同

你应该将你的日期转换为一个日期时间,这个日期应该是空的

[更新]:

注意:它假设datePicker.value是System.DateTime? 如果不是,您的日期存储在日期选择器的哪个属性中

请尝试以下代码:

private void done_Click(object sender, EventArgs e)
{
    if (datePicker != null)
    {
        if (datePicker.Value != null) 
        {
            Items.Over50Date = Convert.ToDateTime(datePicker.Value);
        }
    }

    NavigationService.GoBack();
}
试试这个:

private void done_Click(object sender, EventArgs e)
{
    if (datePicker != null)
        Items.Over50Date = datePicker.Value != null ? datePicker.Value.Value : DateTime.Now;

    NavigationService.GoBack();
}
试试这个:

private void done_Click(object sender, EventArgs e)
{
    if (datePicker != null)
        Items.Over50Date = datePicker.Value != null ? datePicker.Value.Value : DateTime.Now;

    NavigationService.GoBack();
}
试试这个:

private void done_Click(object sender, EventArgs e)
{
    if (datePicker != null)
        Items.Over50Date = datePicker.Value != null ? datePicker.Value.Value : DateTime.Now;

    NavigationService.GoBack();
}
试试这个:

private void done_Click(object sender, EventArgs e)
{
    if (datePicker != null)
        Items.Over50Date = datePicker.Value != null ? datePicker.Value.Value : DateTime.Now;

    NavigationService.GoBack();
}



Does
Items.Over50Date=(DateTime)datePicker.Value帮助?如果我没记错的话,
DatePicker.Value
DateTime?
类型(可为null的DateTime),simple cast应该可以解决这个问题。您引用的错误消息不包含任何
-请检查实际的错误消息中是否有一条。对于我来说,错误消息看起来是另一种情况。这是真正的错误吗?@KamilT你是对的。将其转换为DateTime类对我很有帮助。非常感谢你。但是我也尝试了这个代码,它也帮助了我。Items.Over50Date=datePicker.Value.Value;//获取该值有助于获取该值。Does
Items.Over50Date=(DateTime)datePicker.value帮助?如果我没记错的话,
DatePicker.Value
DateTime?
类型(可为null的DateTime),simple cast应该可以解决这个问题。您引用的错误消息不包含任何
-请检查实际的错误消息中是否有一条。对于我来说,错误消息看起来是另一种情况。这是真正的错误吗?@KamilT你是对的。将其转换为DateTime类对我很有帮助。非常感谢你。但是我也尝试了这个代码,它也帮助了我。Items.Over50Date=datePicker.Value.Value;//获取该值有助于获取该值。Does
Items.Over50Date=(DateTime)datePicker.value帮助?如果我没记错的话,
DatePicker.Value
DateTime?
类型(可为null的DateTime),simple cast应该可以解决这个问题。您引用的错误消息不包含任何
-请检查实际的错误消息中是否有一条。对于我来说,错误消息看起来是另一种情况。这是真正的错误吗?@KamilT你是对的。将其转换为DateTime类对我很有帮助。非常感谢你。但是我也尝试了这个代码,它也帮助了我。Items.Over50Date=datePicker.Value.Value;//获取该值有助于获取该值。Does
Items.Over50Date=(DateTime)datePicker.value帮助?如果我没记错的话,
DatePicker.Value
DateTime?
类型(可为null的DateTime),simple cast应该可以解决这个问题。您引用的错误消息不包含任何
-请检查实际的错误消息中是否有一条。对于我来说,错误消息看起来是另一种情况。这是真正的错误吗?@KamilT你是对的。将其转换为DateTime类对我很有帮助。非常感谢你。但是我也尝试了这个代码,它也帮助了我。Items.Over50Date=datePicker.Value.Value;//获取该值的值有助于我获取该值。您可以帮助我获取代码吗?我理解,但无法带来。Items.Over50Date是什么类型?我在问题中提到过,它的类型是DateTime。我已经用一个可能有效的解决方案更新了我的答案。你能试试吗?是的,它能用。我还尝试了另一种方式,它也可以很好地处理这个简单的代码。Items.Over50Date=datePicker.Value.Value;//获取该值的值有助于我获取该值。您可以帮助我获取代码吗?我理解,但无法带来。Items.Over50Date是什么类型?我在问题中提到过,它的类型是DateTime。我已经用一个可能有效的解决方案更新了我的答案。你能试试吗?是的,它能用。我还尝试了另一种方式,它也可以很好地处理这个简单的代码。Items.Over50Date=datePicker.Value.Value;//获取该值的值有助于我获取该值。您可以帮助我获取代码吗?我理解,但无法带来。Items.Over50Date是什么类型?我在问题中提到过,它的类型是DateTime。我已经用一个可能有效的解决方案更新了我的答案。你能试试吗?是的,它能用。我也试过其他的wa