mirror of
https://jihulab.com/DGP-Studio/Snap.Hutao.git
synced 2025-11-19 21:02:53 +08:00
fix date format
This commit is contained in:
@@ -244,7 +244,7 @@
|
|||||||
<value>尚未刷新</value>
|
<value>尚未刷新</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="ModelEntityDailyNoteRefreshTimeFormat" xml:space="preserve">
|
<data name="ModelEntityDailyNoteRefreshTimeFormat" xml:space="preserve">
|
||||||
<value>刷新于 {0:yyyy/MM/dd HH:mm:ss}</value>
|
<value>刷新于 {0:yyyy.MM.dd HH:mm:ss}</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="ModelEntitySpiralAbyssScheduleFormat" xml:space="preserve">
|
<data name="ModelEntitySpiralAbyssScheduleFormat" xml:space="preserve">
|
||||||
<value>第 {0} 期</value>
|
<value>第 {0} 期</value>
|
||||||
@@ -834,7 +834,7 @@
|
|||||||
<value>在读取游戏进程内存时遇到问题:无法读取到指定地址的有效值</value>
|
<value>在读取游戏进程内存时遇到问题:无法读取到指定地址的有效值</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="ServiceHutaoUserGachaLogExpiredAt" xml:space="preserve">
|
<data name="ServiceHutaoUserGachaLogExpiredAt" xml:space="preserve">
|
||||||
<value>祈愿记录上传服务有效期至\n{0:yyyy-MM-dd HH:mm:ss}</value>
|
<value>祈愿记录上传服务有效期至\n{0:yyyy.MM.dd HH:mm:ss}</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="ServiceMetadataFileNotFound" xml:space="preserve">
|
<data name="ServiceMetadataFileNotFound" xml:space="preserve">
|
||||||
<value>无法找到缓存的元数据文件</value>
|
<value>无法找到缓存的元数据文件</value>
|
||||||
|
|||||||
@@ -10,6 +10,7 @@
|
|||||||
xmlns:shcb="using:Snap.Hutao.Control.Behavior"
|
xmlns:shcb="using:Snap.Hutao.Control.Behavior"
|
||||||
xmlns:shci="using:Snap.Hutao.Control.Image"
|
xmlns:shci="using:Snap.Hutao.Control.Image"
|
||||||
xmlns:shcm="using:Snap.Hutao.Control.Markup"
|
xmlns:shcm="using:Snap.Hutao.Control.Markup"
|
||||||
|
xmlns:shct="using:Snap.Hutao.Control.Text"
|
||||||
xmlns:shvc="using:Snap.Hutao.View.Control"
|
xmlns:shvc="using:Snap.Hutao.View.Control"
|
||||||
xmlns:shvs="using:Snap.Hutao.ViewModel.SpiralAbyss"
|
xmlns:shvs="using:Snap.Hutao.ViewModel.SpiralAbyss"
|
||||||
d:DataContext="{d:DesignInstance shvs:SpiralAbyssRecordViewModel}"
|
d:DataContext="{d:DesignInstance shvs:SpiralAbyssRecordViewModel}"
|
||||||
@@ -25,7 +26,7 @@
|
|||||||
Grid.Row="1"
|
Grid.Row="1"
|
||||||
DisplayMode="Inline"
|
DisplayMode="Inline"
|
||||||
IsPaneOpen="True"
|
IsPaneOpen="True"
|
||||||
OpenPaneLength="120"
|
OpenPaneLength="256"
|
||||||
PaneBackground="Transparent"
|
PaneBackground="Transparent"
|
||||||
Visibility="{Binding SelectedView, Converter={StaticResource EmptyObjectToVisibilityConverter}}">
|
Visibility="{Binding SelectedView, Converter={StaticResource EmptyObjectToVisibilityConverter}}">
|
||||||
<SplitView.Pane>
|
<SplitView.Pane>
|
||||||
@@ -35,14 +36,29 @@
|
|||||||
SelectedItem="{Binding SelectedView, Mode=TwoWay}">
|
SelectedItem="{Binding SelectedView, Mode=TwoWay}">
|
||||||
<ListView.ItemTemplate>
|
<ListView.ItemTemplate>
|
||||||
<DataTemplate>
|
<DataTemplate>
|
||||||
<TextBlock Text="{Binding Entity.Schedule}"/>
|
<StackPanel Margin="0,6">
|
||||||
|
<TextBlock Text="{Binding Entity.Schedule}"/>
|
||||||
|
<TextBlock
|
||||||
|
Opacity="0.7"
|
||||||
|
Style="{StaticResource CaptionTextBlockStyle}"
|
||||||
|
Text="{Binding TimeFormatted}"/>
|
||||||
|
</StackPanel>
|
||||||
</DataTemplate>
|
</DataTemplate>
|
||||||
</ListView.ItemTemplate>
|
</ListView.ItemTemplate>
|
||||||
</ListView>
|
</ListView>
|
||||||
</SplitView.Pane>
|
</SplitView.Pane>
|
||||||
<SplitView.Content>
|
<SplitView.Content>
|
||||||
<Grid>
|
<Grid>
|
||||||
<Pivot>
|
<Grid.RowDefinitions>
|
||||||
|
<RowDefinition/>
|
||||||
|
<RowDefinition/>
|
||||||
|
</Grid.RowDefinitions>
|
||||||
|
<Rectangle
|
||||||
|
Grid.Row="0"
|
||||||
|
Height="{ThemeResource AppBarThemeCompactHeight}"
|
||||||
|
VerticalAlignment="Top"
|
||||||
|
Fill="{ThemeResource CardBackgroundFillColorDefaultBrush}"/>
|
||||||
|
<Pivot Grid.RowSpan="2">
|
||||||
<Pivot.RightHeader>
|
<Pivot.RightHeader>
|
||||||
<CommandBar Grid.Row="0" DefaultLabelPosition="Right">
|
<CommandBar Grid.Row="0" DefaultLabelPosition="Right">
|
||||||
<AppBarButton
|
<AppBarButton
|
||||||
@@ -53,243 +69,259 @@
|
|||||||
Command="{Binding RefreshCommand}"
|
Command="{Binding RefreshCommand}"
|
||||||
Icon="{shcm:FontIcon Glyph=}"
|
Icon="{shcm:FontIcon Glyph=}"
|
||||||
Label="{shcm:ResourceString Name=ViewSpiralAbyssRefresh}"/>
|
Label="{shcm:ResourceString Name=ViewSpiralAbyssRefresh}"/>
|
||||||
</CommandBar>
|
<AppBarButton Icon="{shcm:FontIcon Glyph=}" Label="{shcm:ResourceString Name=ViewSpiralAbyssStatistics}">
|
||||||
</Pivot.RightHeader>
|
<AppBarButton.Flyout>
|
||||||
<PivotItem DataContext="{Binding SelectedView}" Header="{shcm:ResourceString Name=ViewSpiralAbyssStatistics}">
|
<Flyout>
|
||||||
<ScrollViewer>
|
<Flyout.FlyoutPresenterStyle>
|
||||||
<Grid>
|
<Style BasedOn="{StaticResource DefaultFlyoutPresenterStyle}" TargetType="FlyoutPresenter">
|
||||||
<Grid.Resources>
|
<Setter Property="MaxWidth" Value="1920"/>
|
||||||
<x:Double x:Key="SettingsCardWrapThreshold">0</x:Double>
|
</Style>
|
||||||
<x:Double x:Key="SettingsCardWrapNoIconThreshold">0</x:Double>
|
</Flyout.FlyoutPresenterStyle>
|
||||||
<x:Double x:Key="SettingsCardMinHeight">0</x:Double>
|
<Grid ColumnSpacing="6" DataContext="{Binding SelectedView}">
|
||||||
</Grid.Resources>
|
<Grid.Resources>
|
||||||
<Grid.ColumnDefinitions>
|
<x:Double x:Key="SettingsCardWrapThreshold">0</x:Double>
|
||||||
<ColumnDefinition Width="286"/>
|
<x:Double x:Key="SettingsCardWrapNoIconThreshold">0</x:Double>
|
||||||
<ColumnDefinition Width="286"/>
|
<x:Double x:Key="SettingsCardMinHeight">0</x:Double>
|
||||||
<ColumnDefinition Width="auto"/>
|
</Grid.Resources>
|
||||||
</Grid.ColumnDefinitions>
|
<Grid.ColumnDefinitions>
|
||||||
<StackPanel
|
<ColumnDefinition Width="305"/>
|
||||||
Grid.Column="0"
|
<ColumnDefinition Width="225"/>
|
||||||
Margin="16,0,8,16"
|
</Grid.ColumnDefinitions>
|
||||||
Spacing="{StaticResource SettingsCardSpacing}">
|
|
||||||
<cwc:SettingsCard Content="{Binding MaxFloor}" Header="{shcm:ResourceString Name=ViewSpiralAbyssMaxFloor}"/>
|
|
||||||
<cwc:SettingsCard Content="{Binding TotalBattleTimes}" Header="{shcm:ResourceString Name=ViewSpiralAbyssBattleTimes}"/>
|
|
||||||
<cwc:SettingsCard Content="{Binding TotalStar}" Header="{shcm:ResourceString Name=ViewSpiralAbyssTotalStar}"/>
|
|
||||||
|
|
||||||
|
<StackPanel Grid.Column="0" Spacing="{StaticResource SettingsCardSpacing}">
|
||||||
<TextBlock
|
<cwc:SettingsCard Header="{shcm:ResourceString Name=ViewSpiralAbyssDefeat}">
|
||||||
Margin="1,6,0,5"
|
<StackPanel Orientation="Horizontal">
|
||||||
Style="{StaticResource SettingsSectionHeaderTextBlockStyle}"
|
|
||||||
Text="{shcm:ResourceString Name=ViewSpiralAbyssReveal}"/>
|
|
||||||
<ItemsControl HorizontalAlignment="Left" ItemsSource="{Binding Reveals}">
|
|
||||||
<ItemsControl.ItemsPanel>
|
|
||||||
<ItemsPanelTemplate>
|
|
||||||
<cwc:UniformGrid ColumnSpacing="16" Columns="4"/>
|
|
||||||
</ItemsPanelTemplate>
|
|
||||||
</ItemsControl.ItemsPanel>
|
|
||||||
<ItemsControl.ItemTemplate>
|
|
||||||
<DataTemplate>
|
|
||||||
<shvc:BottomTextControl Text="{Binding Value}">
|
|
||||||
<shvc:ItemIcon
|
|
||||||
Width="52"
|
|
||||||
Height="52"
|
|
||||||
Icon="{Binding Icon}"
|
|
||||||
Quality="{Binding Quality}"/>
|
|
||||||
</shvc:BottomTextControl>
|
|
||||||
</DataTemplate>
|
|
||||||
</ItemsControl.ItemTemplate>
|
|
||||||
</ItemsControl>
|
|
||||||
|
|
||||||
|
|
||||||
</StackPanel>
|
|
||||||
<StackPanel Grid.Column="1" Spacing="{StaticResource SettingsCardSpacing}">
|
|
||||||
<cwc:SettingsCard Header="{shcm:ResourceString Name=ViewSpiralAbyssDefeat}">
|
|
||||||
<StackPanel Orientation="Horizontal">
|
|
||||||
<TextBlock
|
|
||||||
Margin="0,0,16,0"
|
|
||||||
VerticalAlignment="Center"
|
|
||||||
Text="{Binding Defeat.Value}"/>
|
|
||||||
<shci:CachedImage
|
|
||||||
Width="48"
|
|
||||||
Height="48"
|
|
||||||
Margin="-8,-24,-8,-8"
|
|
||||||
Source="{Binding Defeat.SideIcon}"/>
|
|
||||||
</StackPanel>
|
|
||||||
</cwc:SettingsCard>
|
|
||||||
|
|
||||||
<cwc:SettingsCard Header="{shcm:ResourceString Name=ViewSpiralAbyssDamage}">
|
|
||||||
<StackPanel Orientation="Horizontal">
|
|
||||||
<TextBlock
|
|
||||||
Margin="0,0,16,0"
|
|
||||||
VerticalAlignment="Center"
|
|
||||||
Text="{Binding Damage.Value}"/>
|
|
||||||
<shci:CachedImage
|
|
||||||
Width="48"
|
|
||||||
Height="48"
|
|
||||||
Margin="-8,-24,-8,-8"
|
|
||||||
Source="{Binding Damage.SideIcon}"/>
|
|
||||||
</StackPanel>
|
|
||||||
</cwc:SettingsCard>
|
|
||||||
|
|
||||||
<cwc:SettingsCard Header="{shcm:ResourceString Name=ViewSpiralAbyssTakeDamage}">
|
|
||||||
<StackPanel Orientation="Horizontal">
|
|
||||||
<TextBlock
|
|
||||||
Margin="0,0,16,0"
|
|
||||||
VerticalAlignment="Center"
|
|
||||||
Text="{Binding TakeDamage.Value}"/>
|
|
||||||
<shci:CachedImage
|
|
||||||
Width="48"
|
|
||||||
Height="48"
|
|
||||||
Margin="-8,-24,-8,-8"
|
|
||||||
Source="{Binding TakeDamage.SideIcon}"/>
|
|
||||||
</StackPanel>
|
|
||||||
</cwc:SettingsCard>
|
|
||||||
|
|
||||||
<cwc:SettingsCard Header="{shcm:ResourceString Name=ViewSpiralAbyssNormalSkill}">
|
|
||||||
<StackPanel Orientation="Horizontal">
|
|
||||||
<TextBlock
|
|
||||||
Margin="0,0,16,0"
|
|
||||||
VerticalAlignment="Center"
|
|
||||||
Text="{Binding NormalSkill.Value}"/>
|
|
||||||
<shci:CachedImage
|
|
||||||
Width="48"
|
|
||||||
Height="48"
|
|
||||||
Margin="-8,-24,-8,-8"
|
|
||||||
Source="{Binding NormalSkill.SideIcon}"/>
|
|
||||||
</StackPanel>
|
|
||||||
</cwc:SettingsCard>
|
|
||||||
|
|
||||||
<cwc:SettingsCard Header="{shcm:ResourceString Name=ViewSpiralAbyssEnergySkill}">
|
|
||||||
<StackPanel Orientation="Horizontal">
|
|
||||||
<TextBlock
|
|
||||||
Margin="0,0,16,0"
|
|
||||||
VerticalAlignment="Center"
|
|
||||||
Text="{Binding EnergySkill.Value}"/>
|
|
||||||
<shci:CachedImage
|
|
||||||
Width="48"
|
|
||||||
Height="48"
|
|
||||||
Margin="-8,-24,-8,-8"
|
|
||||||
Source="{Binding EnergySkill.SideIcon}"/>
|
|
||||||
</StackPanel>
|
|
||||||
</cwc:SettingsCard>
|
|
||||||
</StackPanel>
|
|
||||||
</Grid>
|
|
||||||
</ScrollViewer>
|
|
||||||
</PivotItem>
|
|
||||||
<PivotItem DataContext="{Binding SelectedView}" Header="{shcm:ResourceString Name=ViewSpiralAbyssDetail}">
|
|
||||||
<ScrollViewer VerticalAlignment="Top" HorizontalScrollBarVisibility="Auto">
|
|
||||||
<ItemsControl
|
|
||||||
Margin="16,16,0,0"
|
|
||||||
ItemsPanel="{StaticResource HorizontalStackPanelTemplate}"
|
|
||||||
ItemsSource="{Binding Floors}">
|
|
||||||
<ItemsControl.ItemTemplate>
|
|
||||||
<DataTemplate>
|
|
||||||
<Border
|
|
||||||
Margin="0,0,16,16"
|
|
||||||
VerticalAlignment="Top"
|
|
||||||
Style="{StaticResource BorderCardStyle}">
|
|
||||||
<Grid>
|
|
||||||
<Grid.RowDefinitions>
|
|
||||||
<RowDefinition Height="auto"/>
|
|
||||||
<RowDefinition/>
|
|
||||||
</Grid.RowDefinitions>
|
|
||||||
<Grid Grid.Row="0" Margin="8,8,8,0">
|
|
||||||
<Grid.ColumnDefinitions>
|
|
||||||
<ColumnDefinition/>
|
|
||||||
<ColumnDefinition Width="auto"/>
|
|
||||||
</Grid.ColumnDefinitions>
|
|
||||||
<TextBlock Style="{StaticResource BaseTextBlockStyle}" Text="{Binding Index}"/>
|
|
||||||
<StackPanel
|
|
||||||
Grid.Column="1"
|
|
||||||
HorizontalAlignment="Right"
|
|
||||||
Orientation="Horizontal">
|
|
||||||
<BitmapIcon
|
|
||||||
Width="20"
|
|
||||||
ShowAsMonochrome="True"
|
|
||||||
UriSource="ms-appx:///Resource/Icon/UI_Icon_Tower_Star.png"/>
|
|
||||||
<TextBlock
|
<TextBlock
|
||||||
Width="16"
|
Margin="0,0,16,0"
|
||||||
Margin="8,0,0,0"
|
VerticalAlignment="Center"
|
||||||
Style="{StaticResource BaseTextBlockStyle}"
|
Text="{Binding Defeat.Value}"/>
|
||||||
Text="{Binding Star}"
|
<shci:CachedImage
|
||||||
TextAlignment="Center"/>
|
Width="48"
|
||||||
|
Height="48"
|
||||||
|
Margin="-8,-24,-8,-8"
|
||||||
|
Source="{Binding Defeat.SideIcon}"/>
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
</Grid>
|
</cwc:SettingsCard>
|
||||||
<ItemsControl
|
|
||||||
Grid.Row="1"
|
<cwc:SettingsCard Header="{shcm:ResourceString Name=ViewSpiralAbyssDamage}">
|
||||||
Margin="0,0,0,8"
|
<StackPanel Orientation="Horizontal">
|
||||||
ItemsSource="{Binding Levels}">
|
<TextBlock
|
||||||
|
Margin="0,0,16,0"
|
||||||
|
VerticalAlignment="Center"
|
||||||
|
Text="{Binding Damage.Value}"/>
|
||||||
|
<shci:CachedImage
|
||||||
|
Width="48"
|
||||||
|
Height="48"
|
||||||
|
Margin="-8,-24,-8,-8"
|
||||||
|
Source="{Binding Damage.SideIcon}"/>
|
||||||
|
</StackPanel>
|
||||||
|
</cwc:SettingsCard>
|
||||||
|
|
||||||
|
<cwc:SettingsCard Header="{shcm:ResourceString Name=ViewSpiralAbyssTakeDamage}">
|
||||||
|
<StackPanel Orientation="Horizontal">
|
||||||
|
<TextBlock
|
||||||
|
Margin="0,0,16,0"
|
||||||
|
VerticalAlignment="Center"
|
||||||
|
Text="{Binding TakeDamage.Value}"/>
|
||||||
|
<shci:CachedImage
|
||||||
|
Width="48"
|
||||||
|
Height="48"
|
||||||
|
Margin="-8,-24,-8,-8"
|
||||||
|
Source="{Binding TakeDamage.SideIcon}"/>
|
||||||
|
</StackPanel>
|
||||||
|
</cwc:SettingsCard>
|
||||||
|
|
||||||
|
<cwc:SettingsCard Header="{shcm:ResourceString Name=ViewSpiralAbyssNormalSkill}">
|
||||||
|
<StackPanel Orientation="Horizontal">
|
||||||
|
<TextBlock
|
||||||
|
Margin="0,0,16,0"
|
||||||
|
VerticalAlignment="Center"
|
||||||
|
Text="{Binding NormalSkill.Value}"/>
|
||||||
|
<shci:CachedImage
|
||||||
|
Width="48"
|
||||||
|
Height="48"
|
||||||
|
Margin="-8,-24,-8,-8"
|
||||||
|
Source="{Binding NormalSkill.SideIcon}"/>
|
||||||
|
</StackPanel>
|
||||||
|
</cwc:SettingsCard>
|
||||||
|
|
||||||
|
<cwc:SettingsCard Header="{shcm:ResourceString Name=ViewSpiralAbyssEnergySkill}">
|
||||||
|
<StackPanel Orientation="Horizontal">
|
||||||
|
<TextBlock
|
||||||
|
Margin="0,0,16,0"
|
||||||
|
VerticalAlignment="Center"
|
||||||
|
Text="{Binding EnergySkill.Value}"/>
|
||||||
|
<shci:CachedImage
|
||||||
|
Width="48"
|
||||||
|
Height="48"
|
||||||
|
Margin="-8,-24,-8,-8"
|
||||||
|
Source="{Binding EnergySkill.SideIcon}"/>
|
||||||
|
</StackPanel>
|
||||||
|
</cwc:SettingsCard>
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel Grid.Column="1" Spacing="{StaticResource SettingsCardSpacing}">
|
||||||
|
<cwc:SettingsCard Content="{Binding MaxFloor}" Header="{shcm:ResourceString Name=ViewSpiralAbyssMaxFloor}"/>
|
||||||
|
<cwc:SettingsCard Content="{Binding TotalBattleTimes}" Header="{shcm:ResourceString Name=ViewSpiralAbyssBattleTimes}"/>
|
||||||
|
<cwc:SettingsCard Content="{Binding TotalStar}" Header="{shcm:ResourceString Name=ViewSpiralAbyssTotalStar}"/>
|
||||||
|
|
||||||
|
<TextBlock
|
||||||
|
Margin="1,6,0,5"
|
||||||
|
Style="{StaticResource SettingsSectionHeaderTextBlockStyle}"
|
||||||
|
Text="{shcm:ResourceString Name=ViewSpiralAbyssReveal}"/>
|
||||||
|
<ItemsControl HorizontalAlignment="Left" ItemsSource="{Binding Reveals}">
|
||||||
|
<ItemsControl.ItemsPanel>
|
||||||
|
<ItemsPanelTemplate>
|
||||||
|
<cwc:UniformGrid ColumnSpacing="3" Columns="4"/>
|
||||||
|
</ItemsPanelTemplate>
|
||||||
|
</ItemsControl.ItemsPanel>
|
||||||
<ItemsControl.ItemTemplate>
|
<ItemsControl.ItemTemplate>
|
||||||
<DataTemplate>
|
<DataTemplate>
|
||||||
<Grid Margin="0,8,0,0">
|
<shvc:BottomTextControl Text="{Binding Value}">
|
||||||
<Grid.RowDefinitions>
|
<shvc:ItemIcon
|
||||||
<RowDefinition Height="auto"/>
|
Width="52"
|
||||||
<RowDefinition Height="auto"/>
|
Height="52"
|
||||||
<RowDefinition/>
|
Icon="{Binding Icon}"
|
||||||
</Grid.RowDefinitions>
|
Quality="{Binding Quality}"/>
|
||||||
<MenuFlyoutSeparator/>
|
</shvc:BottomTextControl>
|
||||||
<Grid Grid.Row="1" Margin="8,8,8,0">
|
|
||||||
<Grid.ColumnDefinitions>
|
|
||||||
<ColumnDefinition/>
|
|
||||||
<ColumnDefinition Width="auto"/>
|
|
||||||
</Grid.ColumnDefinitions>
|
|
||||||
<TextBlock Text="{Binding Index}"/>
|
|
||||||
<StackPanel
|
|
||||||
Grid.Column="1"
|
|
||||||
HorizontalAlignment="Right"
|
|
||||||
Orientation="Horizontal">
|
|
||||||
<BitmapIcon
|
|
||||||
Width="20"
|
|
||||||
ShowAsMonochrome="True"
|
|
||||||
UriSource="ms-appx:///Resource/Icon/UI_Icon_Tower_Star.png"/>
|
|
||||||
<TextBlock
|
|
||||||
Width="16"
|
|
||||||
Margin="8,0,0,0"
|
|
||||||
Text="{Binding Star}"
|
|
||||||
TextAlignment="Center"/>
|
|
||||||
</StackPanel>
|
|
||||||
</Grid>
|
|
||||||
|
|
||||||
<ItemsControl
|
|
||||||
Grid.Row="2"
|
|
||||||
Margin="8,0,0,0"
|
|
||||||
ItemsSource="{Binding Battles}">
|
|
||||||
<ItemsControl.ItemTemplate>
|
|
||||||
<DataTemplate>
|
|
||||||
<StackPanel>
|
|
||||||
<ItemsControl
|
|
||||||
Margin="0,8,0,0"
|
|
||||||
ItemsPanel="{StaticResource HorizontalStackPanelTemplate}"
|
|
||||||
ItemsSource="{Binding Avatars}">
|
|
||||||
<ItemsControl.ItemTemplate>
|
|
||||||
<DataTemplate>
|
|
||||||
<shvc:ItemIcon
|
|
||||||
Width="60"
|
|
||||||
Height="60"
|
|
||||||
Margin="0,0,8,0"
|
|
||||||
Icon="{Binding Icon}"
|
|
||||||
Quality="{Binding Quality}"/>
|
|
||||||
</DataTemplate>
|
|
||||||
</ItemsControl.ItemTemplate>
|
|
||||||
</ItemsControl>
|
|
||||||
<TextBlock
|
|
||||||
Margin="0,2,0,0"
|
|
||||||
Opacity="0.6"
|
|
||||||
Style="{StaticResource CaptionTextBlockStyle}"
|
|
||||||
Text="{Binding Time}"/>
|
|
||||||
</StackPanel>
|
|
||||||
</DataTemplate>
|
|
||||||
</ItemsControl.ItemTemplate>
|
|
||||||
</ItemsControl>
|
|
||||||
</Grid>
|
|
||||||
</DataTemplate>
|
</DataTemplate>
|
||||||
</ItemsControl.ItemTemplate>
|
</ItemsControl.ItemTemplate>
|
||||||
</ItemsControl>
|
</ItemsControl>
|
||||||
</Grid>
|
</StackPanel>
|
||||||
</Border>
|
</Grid>
|
||||||
</DataTemplate>
|
</Flyout>
|
||||||
</ItemsControl.ItemTemplate>
|
</AppBarButton.Flyout>
|
||||||
</ItemsControl>
|
</AppBarButton>
|
||||||
|
</CommandBar>
|
||||||
|
</Pivot.RightHeader>
|
||||||
|
<PivotItem DataContext="{Binding SelectedView}" Header="{shcm:ResourceString Name=ViewSpiralAbyssDetail}">
|
||||||
|
<ScrollViewer VerticalAlignment="Top">
|
||||||
|
<StackPanel>
|
||||||
|
<TextBlock
|
||||||
|
Margin="16,16,0,0"
|
||||||
|
Style="{ThemeResource SubtitleTextBlockStyle}"
|
||||||
|
Text="{Binding BlessingName}"/>
|
||||||
|
<ItemsControl Margin="16,0,16,0" ItemsSource="{Binding Blessings}">
|
||||||
|
<ItemsControl.ItemTemplate>
|
||||||
|
<DataTemplate>
|
||||||
|
<shct:DescriptionTextBlock Description="{Binding}"/>
|
||||||
|
</DataTemplate>
|
||||||
|
</ItemsControl.ItemTemplate>
|
||||||
|
</ItemsControl>
|
||||||
|
|
||||||
|
<ItemsControl
|
||||||
|
Margin="16,16,0,0"
|
||||||
|
ItemsPanel="{StaticResource HorizontalStackPanelTemplate}"
|
||||||
|
ItemsSource="{Binding Floors}">
|
||||||
|
<ItemsControl.ItemTemplate>
|
||||||
|
<DataTemplate>
|
||||||
|
<Border
|
||||||
|
Margin="0,0,16,16"
|
||||||
|
VerticalAlignment="Top"
|
||||||
|
Style="{StaticResource BorderCardStyle}">
|
||||||
|
<Grid>
|
||||||
|
<Grid.RowDefinitions>
|
||||||
|
<RowDefinition Height="auto"/>
|
||||||
|
<RowDefinition/>
|
||||||
|
</Grid.RowDefinitions>
|
||||||
|
<Grid Grid.Row="0" Margin="8,8,8,0">
|
||||||
|
<Grid.ColumnDefinitions>
|
||||||
|
<ColumnDefinition/>
|
||||||
|
<ColumnDefinition Width="auto"/>
|
||||||
|
</Grid.ColumnDefinitions>
|
||||||
|
<TextBlock Style="{StaticResource BaseTextBlockStyle}" Text="{Binding Index}"/>
|
||||||
|
<StackPanel
|
||||||
|
Grid.Column="1"
|
||||||
|
HorizontalAlignment="Right"
|
||||||
|
Orientation="Horizontal">
|
||||||
|
<BitmapIcon
|
||||||
|
Width="20"
|
||||||
|
ShowAsMonochrome="True"
|
||||||
|
UriSource="ms-appx:///Resource/Icon/UI_Icon_Tower_Star.png"/>
|
||||||
|
<TextBlock
|
||||||
|
Width="16"
|
||||||
|
Margin="8,0,0,0"
|
||||||
|
Style="{StaticResource BaseTextBlockStyle}"
|
||||||
|
Text="{Binding Star}"
|
||||||
|
TextAlignment="Center"/>
|
||||||
|
</StackPanel>
|
||||||
|
</Grid>
|
||||||
|
<ItemsControl
|
||||||
|
Grid.Row="1"
|
||||||
|
Margin="0,0,0,8"
|
||||||
|
ItemsSource="{Binding Levels}">
|
||||||
|
<ItemsControl.ItemTemplate>
|
||||||
|
<DataTemplate>
|
||||||
|
<Grid Margin="0,8,0,0">
|
||||||
|
<Grid.RowDefinitions>
|
||||||
|
<RowDefinition Height="auto"/>
|
||||||
|
<RowDefinition Height="auto"/>
|
||||||
|
<RowDefinition/>
|
||||||
|
</Grid.RowDefinitions>
|
||||||
|
<MenuFlyoutSeparator/>
|
||||||
|
<Grid Grid.Row="1" Margin="8,8,8,0">
|
||||||
|
<Grid.ColumnDefinitions>
|
||||||
|
<ColumnDefinition/>
|
||||||
|
<ColumnDefinition Width="auto"/>
|
||||||
|
</Grid.ColumnDefinitions>
|
||||||
|
<TextBlock Text="{Binding Index}"/>
|
||||||
|
<StackPanel
|
||||||
|
Grid.Column="1"
|
||||||
|
HorizontalAlignment="Right"
|
||||||
|
Orientation="Horizontal">
|
||||||
|
<BitmapIcon
|
||||||
|
Width="20"
|
||||||
|
ShowAsMonochrome="True"
|
||||||
|
UriSource="ms-appx:///Resource/Icon/UI_Icon_Tower_Star.png"/>
|
||||||
|
<TextBlock
|
||||||
|
Width="16"
|
||||||
|
Margin="8,0,0,0"
|
||||||
|
Text="{Binding Star}"
|
||||||
|
TextAlignment="Center"/>
|
||||||
|
</StackPanel>
|
||||||
|
</Grid>
|
||||||
|
|
||||||
|
<ItemsControl
|
||||||
|
Grid.Row="2"
|
||||||
|
Margin="8,0,0,0"
|
||||||
|
ItemsSource="{Binding Battles}">
|
||||||
|
<ItemsControl.ItemTemplate>
|
||||||
|
<DataTemplate>
|
||||||
|
<StackPanel>
|
||||||
|
<ItemsControl
|
||||||
|
Margin="0,8,0,0"
|
||||||
|
ItemsPanel="{StaticResource HorizontalStackPanelTemplate}"
|
||||||
|
ItemsSource="{Binding Avatars}">
|
||||||
|
<ItemsControl.ItemTemplate>
|
||||||
|
<DataTemplate>
|
||||||
|
<shvc:ItemIcon
|
||||||
|
Width="60"
|
||||||
|
Height="60"
|
||||||
|
Margin="0,0,8,0"
|
||||||
|
Icon="{Binding Icon}"
|
||||||
|
Quality="{Binding Quality}"/>
|
||||||
|
</DataTemplate>
|
||||||
|
</ItemsControl.ItemTemplate>
|
||||||
|
</ItemsControl>
|
||||||
|
<TextBlock
|
||||||
|
Margin="0,2,0,0"
|
||||||
|
Opacity="0.6"
|
||||||
|
Style="{StaticResource CaptionTextBlockStyle}"
|
||||||
|
Text="{Binding Time}"/>
|
||||||
|
</StackPanel>
|
||||||
|
</DataTemplate>
|
||||||
|
</ItemsControl.ItemTemplate>
|
||||||
|
</ItemsControl>
|
||||||
|
</Grid>
|
||||||
|
</DataTemplate>
|
||||||
|
</ItemsControl.ItemTemplate>
|
||||||
|
</ItemsControl>
|
||||||
|
</Grid>
|
||||||
|
</Border>
|
||||||
|
</DataTemplate>
|
||||||
|
</ItemsControl.ItemTemplate>
|
||||||
|
</ItemsControl>
|
||||||
|
</StackPanel>
|
||||||
|
|
||||||
</ScrollViewer>
|
</ScrollViewer>
|
||||||
</PivotItem>
|
</PivotItem>
|
||||||
</Pivot>
|
</Pivot>
|
||||||
|
|||||||
@@ -14,10 +14,10 @@ namespace Snap.Hutao.ViewModel.SpiralAbyss;
|
|||||||
/// 深渊视图
|
/// 深渊视图
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[HighQuality]
|
[HighQuality]
|
||||||
internal sealed class SpiralAbyssView : IEntityOnly<SpiralAbyssEntry>,
|
internal sealed class SpiralAbyssView : IEntityOnly<SpiralAbyssEntry?>,
|
||||||
IMappingFrom<SpiralAbyssView, SpiralAbyssEntry, SpiralAbyssMetadataContext>
|
IMappingFrom<SpiralAbyssView, SpiralAbyssEntry, SpiralAbyssMetadataContext>
|
||||||
{
|
{
|
||||||
private readonly SpiralAbyssEntry entity;
|
private readonly SpiralAbyssEntry? entity;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 构造一个新的深渊视图
|
/// 构造一个新的深渊视图
|
||||||
@@ -25,16 +25,11 @@ internal sealed class SpiralAbyssView : IEntityOnly<SpiralAbyssEntry>,
|
|||||||
/// <param name="entity">实体</param>
|
/// <param name="entity">实体</param>
|
||||||
/// <param name="idAvatarMap">Id角色映射</param>
|
/// <param name="idAvatarMap">Id角色映射</param>
|
||||||
private SpiralAbyssView(SpiralAbyssEntry entity, SpiralAbyssMetadataContext context)
|
private SpiralAbyssView(SpiralAbyssEntry entity, SpiralAbyssMetadataContext context)
|
||||||
|
: this(context.IdScheduleMap[(uint)entity.ScheduleId], context)
|
||||||
{
|
{
|
||||||
this.entity = entity;
|
this.entity = entity;
|
||||||
Web.Hoyolab.Takumi.GameRecord.SpiralAbyss.SpiralAbyss spiralAbyss = entity.SpiralAbyss;
|
|
||||||
|
|
||||||
TowerSchedule towerSchedule = context.IdScheduleMap[(uint)entity.ScheduleId];
|
|
||||||
TimeFormatted = $"{towerSchedule.Open:yyyy/MM/dd HH:mm:ss} - {towerSchedule.Close:yyyy/MM/dd HH:mm:ss}";
|
|
||||||
|
|
||||||
BlessingName = towerSchedule.BuffName;
|
|
||||||
Blessings = towerSchedule.Descriptions;
|
|
||||||
|
|
||||||
|
Web.Hoyolab.Takumi.GameRecord.SpiralAbyss.SpiralAbyss? spiralAbyss = entity.SpiralAbyss;
|
||||||
TotalBattleTimes = spiralAbyss.TotalBattleTimes;
|
TotalBattleTimes = spiralAbyss.TotalBattleTimes;
|
||||||
TotalStar = spiralAbyss.TotalStar;
|
TotalStar = spiralAbyss.TotalStar;
|
||||||
MaxFloor = spiralAbyss.MaxFloor;
|
MaxFloor = spiralAbyss.MaxFloor;
|
||||||
@@ -47,7 +42,15 @@ internal sealed class SpiralAbyssView : IEntityOnly<SpiralAbyssEntry>,
|
|||||||
Floors = spiralAbyss.Floors.Select(f => new FloorView(f, context.IdAvatarMap)).Reverse().ToList();
|
Floors = spiralAbyss.Floors.Select(f => new FloorView(f, context.IdAvatarMap)).Reverse().ToList();
|
||||||
}
|
}
|
||||||
|
|
||||||
public SpiralAbyssEntry Entity { get => entity; }
|
private SpiralAbyssView(TowerSchedule towerSchedule, SpiralAbyssMetadataContext context)
|
||||||
|
{
|
||||||
|
TimeFormatted = $"{towerSchedule.Open:yyyy.MM.dd HH:mm} - {towerSchedule.Close:yyyy.MM.dd HH:mm}";
|
||||||
|
|
||||||
|
BlessingName = towerSchedule.BuffName;
|
||||||
|
Blessings = towerSchedule.Descriptions;
|
||||||
|
}
|
||||||
|
|
||||||
|
public SpiralAbyssEntry? Entity { get => entity; }
|
||||||
|
|
||||||
public string TimeFormatted { get; }
|
public string TimeFormatted { get; }
|
||||||
|
|
||||||
@@ -68,12 +71,12 @@ internal sealed class SpiralAbyssView : IEntityOnly<SpiralAbyssEntry>,
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// 最深抵达
|
/// 最深抵达
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string MaxFloor { get; }
|
public string MaxFloor { get; } = default!;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 出战次数
|
/// 出战次数
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public List<RankAvatar> Reveals { get; }
|
public List<RankAvatar> Reveals { get; } = default!;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 击破次数
|
/// 击破次数
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ internal sealed class Announcement : UploadAnnouncement
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public long LastUpdateTime { get; set; }
|
public long LastUpdateTime { get; set; }
|
||||||
|
|
||||||
public string UpdateTimeFormatted { get => $"{DateTimeOffset.FromUnixTimeSeconds(LastUpdateTime).ToLocalTime():yyyy-MM-dd HH:mm:ss}"; }
|
public string UpdateTimeFormatted { get => $"{DateTimeOffset.FromUnixTimeSeconds(LastUpdateTime).ToLocalTime():yyyy.MM.dd HH:mm:ss}"; }
|
||||||
|
|
||||||
public ICommand? DismissCommand { get; set; }
|
public ICommand? DismissCommand { get; set; }
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user