You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WinUI3/Windows App SDK中如何让CalendarView自动滚动至今日日期?

实现WinUI3 CalendarView的“返回今日”功能

XAML 布局示例

假设你已经在CalendarView上方添加了按钮,以下是完整布局参考:

<StackPanel Orientation="Vertical">
    <Button x:Name="GoToTodayBtn" Content="今日" Click="GoToTodayBtn_Click" Margin="10"/>
    <CalendarView x:Name="MyCalendarView" Margin="10"/>
</StackPanel>

C# 后台实现

在页面代码文件中添加按钮点击事件逻辑,核心是调用CalendarView.ChangeView方法滚动到今日日期:

private void GoToTodayBtn_Click(object sender, RoutedEventArgs e)
{
    // 获取今日日期(仅保留日期部分)
    DateTime today = DateTime.Today;
    // 滚动到今日日期,启用平滑动画
    MyCalendarView.ChangeView(today, null, null, true);
    
    // 可选:同时选中今日日期
    MyCalendarView.SelectedDate = today;
}

关键说明

  • ChangeView是CalendarView滚动到指定日期的核心API,第一个参数传入目标日期即可触发滚动。
  • 最后一个布尔参数animate设为true启用平滑滚动动画,设为false则直接跳转。
  • 若需要选中今日日期,额外设置SelectedDate属性即可实现选中效果。

内容的提问来源于stack exchange,提问作者user21311740

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 07:54:57