MonthlyCalendar_SelectedDatesChanged事件处理程序在选择日期时不设置属性

问题描述 投票:0回答:1

所以我有两个变量

DateTime date1 = DateTime.Now;
DateTime selected;

和一个事件处理程序,应该将“选定”变量更改为日历上选择的日期。 time是一个文本框,用户也可以在其中插入时间。

private void MonthlyCalendar_SelectedDatesChanged(object sender, SelectionChangedEventArgs e)
{
    selected = Calendar.SelectedDate.Value;
    selected = DateTime.Parse(time.Text);
}

如何设置所选变量的时间部分?我知道,因为DateTime是不可变的,所以不能像我希望的那样容易改变。当前Parse调用将选定的varriable重置回当前日期。

c# wpf datetime
1个回答
0
投票

您无法准确更改时间,但可以尝试使用时间跨度将时间添加到日期

DateTime selected;
selected = Calendar.SelectedDate.Value;
TimeSpan ts = new TimeSpan(09, 15, 0);
selected = selected.Date + ts;

这将使它成为相同的日期,但上午9点15分

© www.soinside.com 2019 - 2024. All rights reserved.