我想在UWP的CalenderView中的dayitem上添加一个click事件,该事件发送有关当天的信息。我很难弄清楚该怎么做。
[ 我已经尝试过跟踪,但是它没有用,我可以想象有更好的方法来做到这一点。
private async void KalenderView_DoubleTappedAsync(object sender, DoubleTappedRoutedEventArgs e)
{
Viewmodel.Calendar_ViewModel calender_Viewmodel = new Viewmodel.Calendar_ViewModel();
if ( KalenderView.SelectedDates != null )
{
await calender_Viewmodel.OpenNewWindowAsync();
}
else
{
}
}
}
和XML:
<Grid>
<CalendarView
x:Name="KalenderView"
DoubleTapped="KalenderView_DoubleTappedAsync"
CalendarViewDayItemChanging="CalendarView_CalendarViewDayItemChanging" HorizontalAlignment="Center" Margin="0,0,0,0" VerticalAlignment="Center" Height="526" Width="936"
SelectionMode="Single"
DisplayMode="Month"/>
</Grid>
答案 0 :(得分:0)
您可以为此目的使用SelectedDatesChanged事件,只要您以任何方式更改日历中的日期,就会调用该事件,并且在此事件中,您可以看到当前选中并访问的日历的新日期,只是 dayitem 或calenderdayitem上的任何其他属性。
如果要在单击日项目时专门添加一个事件,可能会有些复杂,因为您必须创建一个控件(请参阅:Templated Control vs Custom Control in UWP. No clear answer found online),但是我建议不要这样做,除非您别无选择,而且您知道自己在做什么。