我目前正在使用 Windows 10 移动应用程序。我有一个简单的 DateTime 列表,如下所示:
public DateTime NextDate { get; set;}
public DateTime PrevDate { get; set;}
// list of date
public List<DateTime> DateList { get; set; }
protected override void OnNavigatedTo(NavigationEventArgs e)
{
base.OnNavigatedTo(e);
DateTime beginDate = new DateTime(2015, 9, 22);
DateTime endDate = DateTime.Today;
DateList = new List<DateTime>();
for (DateTime date = beginDate; date < endDate; date = date.AddDays(1))
{
DateList.Add(date);
}
}
现在我想向它展示翻转视图,不仅是一天,而且是 3 天:当天、前一天和第二天。
这是我的 XAML 代码:
<FlipView x:Name="dateFlipView" BorderBrush="Azure" Height="100"
ItemsSource="{Binding DateList}" SelectionChanged="dateFlipView_SelectionChanged">
<FlipView.ItemTemplate>
<DataTemplate>
<!-- show previous date -->
<Canvas Height="100" Width="100" Background="#FF7683FF">
<StackPanel Width="100" HorizontalAlignment="Left">
<TextBlock Text="{Binding Day}" Style="{StaticResource HeaderTextBlockStyle}" HorizontalAlignment="Center"/>
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center">
<TextBlock Text="{Binding Month}" Margin="0,0,8,0" Style="{StaticResource CaptionTextBlockStyle}"/>
<TextBlock Text="{Binding Year}" HorizontalAlignment="Right" Style="{StaticResource CaptionTextBlockStyle}"/>
</StackPanel>
<StackPanel>
<TextBlock Text="{Binding Day}"/>
</StackPanel>
</StackPanel>
</Canvas>
<!-- show next date -->
</DataTemplate>
</FlipView.ItemTemplate>
</FlipView>
上面的代码只显示了一个日期。
我找到了一个解决方案,我可以添加 2 个 DateTime 属性,NextDate
并且PrevDate
在 FlipView 中可以使用 Binding RelativeSource={RelativeSource AncestorType={x:Type Window}}, Path=ColumnHeadInfo}
。但我还不知道我到底应该做什么。