gpt4 book ai didi

c++ - 当有 C++/CX 项目时,有没有办法为 CalendarDatePicker 设置默认日期?

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:38:25 25 4
gpt4 key购买 nike

我有一个 C++/CX UWP 项目,希望用户从我使用 Windows.UI.Xaml.Controls 创建的 CalendarDatePicker 中选择一个日期。但是,在初始化时,我希望将 CalendarDatePicker 选择到特定日期(当前没有选择日期,它只是说“选择日期”)。我知道这很容易通过 C# 实现,而且我很确定 C++ 也有办法,但我还没有找到解决方案。

有人知道如何实现吗?

最佳答案

您可以将具体的日期传递给datePicker->Date。完整的步骤如下。document讲解了DateTime在C++/CX中的相关使用。所以我们可以通过SYSTEMTIME->FILETIME->_ULARGE_INTEGER->DateTime获取DateTime。首先,我们使用COleDateTime类来解析具体日期字符串(使用前包含ATLComTime.h)然后转换。

#include <ATLComTime.h>

//parse date string
COleDateTime coDT;
coDT.ParseDateTime(L"2012-11-10", 0, 0);

//get system time struct​
SYSTEMTIME st;​
coDT.GetAsSystemTime(st);​

//COleDateTime is in local timezone, DateTime is in UTC, so we need to convert​
SYSTEMTIME st_utc;​
TzSpecificLocalTimeToSystemTime(nullptr, &st, &st_utc);​

//get filetime struct to get a time format compatible with DateTime​
FILETIME fileTime;​
SystemTimeToFileTime(&st_utc, &ft);​

//use _ULARGE_INTEGER to get a int64 to set the DateTime struct to​
_ULARGE_INTEGER ulint = { fileTime.dwLowDateTime, fileTime.dwHighDateTime };​

Windows::Foundation::DateTime myDateTime;​
wfdt.UniversalTime = ulint.QuadPart;​

//set date
MyDatePicker->Date = myDateTime;

关于c++ - 当有 C++/CX 项目时,有没有办法为 CalendarDatePicker 设置默认日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56941020/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com