mirror of
https://jihulab.com/DGP-Studio/Snap.Hutao.git
synced 2025-11-19 21:02:53 +08:00
avatar info complete 1
This commit is contained in:
@@ -121,19 +121,27 @@ public abstract class CompositionImage : Microsoft.UI.Xaml.Controls.Control
|
||||
{
|
||||
await HideAsync(token);
|
||||
|
||||
LoadedImageSurface? imageSurface = null;
|
||||
Compositor compositor = ElementCompositionPreview.GetElementVisual(this).Compositor;
|
||||
|
||||
if (uri != null)
|
||||
{
|
||||
StorageFile storageFile = await imageCache.GetFileFromCacheAsync(uri);
|
||||
Compositor compositor = ElementCompositionPreview.GetElementVisual(this).Compositor;
|
||||
|
||||
LoadedImageSurface? imageSurface = null;
|
||||
try
|
||||
if (uri.Scheme == "ms-appx")
|
||||
{
|
||||
imageSurface = await LoadImageSurfaceAsync(storageFile, token);
|
||||
imageSurface = LoadedImageSurface.StartLoadFromUri(uri);
|
||||
}
|
||||
catch (COMException)
|
||||
else
|
||||
{
|
||||
await imageCache.RemoveAsync(uri.Enumerate());
|
||||
StorageFile storageFile = await imageCache.GetFileFromCacheAsync(uri);
|
||||
|
||||
try
|
||||
{
|
||||
imageSurface = await LoadImageSurfaceAsync(storageFile, token);
|
||||
}
|
||||
catch (COMException)
|
||||
{
|
||||
await imageCache.RemoveAsync(uri.Enumerate());
|
||||
}
|
||||
}
|
||||
|
||||
if (imageSurface != null)
|
||||
|
||||
32
src/Snap.Hutao/Snap.Hutao/Control/Markup/UriExtension.cs
Normal file
32
src/Snap.Hutao/Snap.Hutao/Control/Markup/UriExtension.cs
Normal file
@@ -0,0 +1,32 @@
|
||||
// Copyright (c) DGP Studio. All rights reserved.
|
||||
// Licensed under the MIT license.
|
||||
|
||||
using Microsoft.UI.Xaml.Controls;
|
||||
using Microsoft.UI.Xaml.Markup;
|
||||
|
||||
namespace Snap.Hutao.Control.Markup;
|
||||
|
||||
/// <summary>
|
||||
/// Uri扩展
|
||||
/// </summary>
|
||||
[MarkupExtensionReturnType(ReturnType = typeof(Uri))]
|
||||
public sealed class UriExtension : MarkupExtension
|
||||
{
|
||||
/// <summary>
|
||||
/// 构造一个新的Uri扩展
|
||||
/// </summary>
|
||||
public UriExtension()
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 地址
|
||||
/// </summary>
|
||||
public string? Value { get; set; }
|
||||
|
||||
/// <inheritdoc/>
|
||||
protected override object ProvideValue()
|
||||
{
|
||||
return new Uri(Value ?? string.Empty);
|
||||
}
|
||||
}
|
||||
@@ -102,7 +102,7 @@ public class DescriptionTextBlock : ContentControl
|
||||
|
||||
if (i == description.Length - 1)
|
||||
{
|
||||
AppendText(text, description[last..i]);
|
||||
AppendText(text, description[last..(i + 1)]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,7 +16,7 @@ public class Weapon : EquipBase
|
||||
/// <summary>
|
||||
/// 精炼属性
|
||||
/// </summary>
|
||||
public int AffixLevel { get; set; }
|
||||
public string AffixLevel { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 精炼名称
|
||||
|
||||
@@ -28,7 +28,7 @@ internal sealed class DescParamDescriptor : ValueConverterBase<DescParam, IList<
|
||||
|
||||
LevelParam<int, double> param = from.Parameters.Single(param => param.Level == level);
|
||||
|
||||
return new LevelParam<string, ParameterInfo>(param.Level.ToString(), GetParameterInfos(formats, param.Parameters));
|
||||
return new LevelParam<string, ParameterInfo>($"Lv.{param.Level}", GetParameterInfos(formats, param.Parameters));
|
||||
}
|
||||
|
||||
/// <inheritdoc/>
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
// Copyright (c) DGP Studio. All rights reserved.
|
||||
// Licensed under the MIT license.
|
||||
|
||||
using Snap.Hutao.Control;
|
||||
using Snap.Hutao.Model.Intrinsic;
|
||||
using Windows.UI;
|
||||
|
||||
namespace Snap.Hutao.Model.Metadata.Converter;
|
||||
|
||||
/// <summary>
|
||||
/// 品质颜色转换器
|
||||
/// </summary>
|
||||
internal class QualityColorConverter : ValueConverterBase<ItemQuality, Color>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public override Color Convert(ItemQuality from)
|
||||
{
|
||||
return from switch
|
||||
{
|
||||
ItemQuality.QUALITY_WHITE => Color.FromArgb(0xFF, 0x72, 0x77, 0x8B),
|
||||
ItemQuality.QUALITY_GREEN => Color.FromArgb(0xFF, 0x2A, 0x8F, 0x72),
|
||||
ItemQuality.QUALITY_BLUE => Color.FromArgb(0xFF, 0x51, 0x80, 0xCB),
|
||||
ItemQuality.QUALITY_PURPLE => Color.FromArgb(0xFF, 0xA1, 0x56, 0xE0),
|
||||
ItemQuality.QUALITY_ORANGE or ItemQuality.QUALITY_ORANGE_SP => Color.FromArgb(0xFF, 0xBC, 0x69, 0x32),
|
||||
_ => Color.FromArgb(0x00, 0x00, 0x00, 0x00),
|
||||
};
|
||||
}
|
||||
}
|
||||
BIN
src/Snap.Hutao/Snap.Hutao/Resource/Icon/UI_Icon_Locked.png
Normal file
BIN
src/Snap.Hutao/Snap.Hutao/Resource/Icon/UI_Icon_Locked.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.8 KiB |
@@ -5,7 +5,6 @@ using Snap.Hutao.Extension;
|
||||
using Snap.Hutao.Model;
|
||||
using Snap.Hutao.Model.Binding.AvatarProperty;
|
||||
using Snap.Hutao.Model.Intrinsic;
|
||||
using Snap.Hutao.Model.Metadata.Annotation;
|
||||
using Snap.Hutao.Model.Metadata.Converter;
|
||||
using Snap.Hutao.Model.Metadata.Reliquary;
|
||||
using Snap.Hutao.Service.Metadata;
|
||||
@@ -144,7 +143,7 @@ internal class SummaryFactory : ISummaryFactory
|
||||
Description = reliquary.Description,
|
||||
|
||||
// EquipBase
|
||||
Level = $"+ {equip.Reliquary!.Level - 1}",
|
||||
Level = $"+{equip.Reliquary!.Level - 1}",
|
||||
Quality = reliquary.RankLevel,
|
||||
MainProperty = CreateReliquaryMainProperty(equip.Reliquary.MainPropId, reliquary.RankLevel, equip.Reliquary.Level),
|
||||
|
||||
@@ -182,13 +181,13 @@ internal class SummaryFactory : ISummaryFactory
|
||||
Description = weapon.Description,
|
||||
|
||||
// EquipBase
|
||||
Level = $"{equip.Weapon!.Level}",
|
||||
Level = $"Lv.{equip.Weapon!.Level}",
|
||||
Quality = weapon.Quality,
|
||||
MainProperty = new(string.Empty, string.Empty), // TODO
|
||||
|
||||
// Weapon
|
||||
SubProperty = new(string.Empty, string.Empty), // TODO
|
||||
AffixLevel = level + 1,
|
||||
AffixLevel = $"精炼{level + 1}",
|
||||
AffixName = weapon.Affix?.Name ?? string.Empty,
|
||||
AffixDescription = weapon.Affix?.Descriptions.Single(a => a.Level == level).Description ?? string.Empty,
|
||||
};
|
||||
|
||||
@@ -39,6 +39,7 @@
|
||||
<None Remove="Resource\Icon\UI_BtnIcon_Gacha.png" />
|
||||
<None Remove="Resource\Icon\UI_Icon_Achievement.png" />
|
||||
<None Remove="Resource\Icon\UI_Icon_BoostUp.png" />
|
||||
<None Remove="Resource\Icon\UI_Icon_Locked.png" />
|
||||
<None Remove="Resource\Icon\UI_Icon_None.png" />
|
||||
<None Remove="Resource\Icon\UI_ItemIcon_201.png" />
|
||||
<None Remove="Resource\Segoe Fluent Icons.ttf" />
|
||||
@@ -87,6 +88,7 @@
|
||||
<Content Include="Resource\Icon\UI_BtnIcon_Gacha.png" />
|
||||
<Content Include="Resource\Icon\UI_Icon_Achievement.png" />
|
||||
<Content Include="Resource\Icon\UI_Icon_BoostUp.png" />
|
||||
<Content Include="Resource\Icon\UI_Icon_Locked.png" />
|
||||
<Content Include="Resource\Icon\UI_Icon_None.png" />
|
||||
<Content Include="Resource\Icon\UI_ItemIcon_201.png" />
|
||||
</ItemGroup>
|
||||
|
||||
@@ -12,8 +12,12 @@
|
||||
xmlns:shcb="using:Snap.Hutao.Control.Behavior"
|
||||
xmlns:shci="using:Snap.Hutao.Control.Image"
|
||||
xmlns:shcm="using:Snap.Hutao.Control.Markup"
|
||||
xmlns:shvc="using:Snap.Hutao.View.Control"
|
||||
xmlns:shct="using:Snap.Hutao.Control.Text"
|
||||
xmlns:shmmc="using:Snap.Hutao.Model.Metadata.Converter"
|
||||
xmlns:shvconv="using:Snap.Hutao.View.Converter"
|
||||
xmlns:shv="using:Snap.Hutao.ViewModel"
|
||||
xmlns:sc="using:SettingsUI.Controls"
|
||||
xmlns:shvcont="using:Snap.Hutao.View.Control"
|
||||
mc:Ignorable="d"
|
||||
Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"
|
||||
d:DataContext="{d:DesignInstance shv:AvatarPropertyViewModel}">
|
||||
@@ -28,9 +32,11 @@
|
||||
<x:Double>1</x:Double>
|
||||
</cwuconv:BoolToObjectConverter.TrueValue>
|
||||
<cwuconv:BoolToObjectConverter.FalseValue>
|
||||
<x:Double>0.3</x:Double>
|
||||
<x:Double>0.5</x:Double>
|
||||
</cwuconv:BoolToObjectConverter.FalseValue>
|
||||
</cwuconv:BoolToObjectConverter>
|
||||
<shvconv:BoolToVisibilityRevertConverter x:Key="BoolToVisibilityRevertConverter"/>
|
||||
<shmmc:QualityColorConverter x:Key="QualityColorConverter"/>
|
||||
</Page.Resources>
|
||||
|
||||
<Grid>
|
||||
@@ -140,15 +146,6 @@
|
||||
<ColumnDefinition/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<StackPanel>
|
||||
<!--<Border
|
||||
Margin="12,12,12,0"
|
||||
CornerRadius="{StaticResource CompatCornerRadius}"
|
||||
Background="{StaticResource CardBackgroundFillColorSecondary}">
|
||||
<TextBlock
|
||||
Margin="12,6"
|
||||
Style="{StaticResource SubtitleTextBlockStyle}"
|
||||
Text="{Binding SelectedAvatar.Name}"/>
|
||||
</Border>-->
|
||||
<Border
|
||||
Margin="12,12,12,0"
|
||||
CornerRadius="{StaticResource CompatCornerRadius}"
|
||||
@@ -167,11 +164,42 @@
|
||||
Background="Transparent"
|
||||
BorderBrush="{x:Null}"
|
||||
Margin="2,2,0,2">
|
||||
<shci:CachedImage
|
||||
Width="32"
|
||||
Height="32"
|
||||
Source="{Binding Icon}"
|
||||
Opacity="{Binding IsActiviated,Converter={StaticResource BoolToOpacityConverter}}"/>
|
||||
<Button.Content>
|
||||
<Grid>
|
||||
<!--#FFDAB79B-->
|
||||
<Ellipse
|
||||
Fill="#FFDAB79B"
|
||||
Stroke="#FFB29880"/>
|
||||
<shci:CachedImage
|
||||
Width="32"
|
||||
Height="32"
|
||||
Source="{Binding Icon}"
|
||||
Opacity="{Binding IsActiviated,Converter={StaticResource BoolToOpacityConverter}}"/>
|
||||
<Image
|
||||
Width="16"
|
||||
Height="16"
|
||||
Source="ms-appx:///Resource/Icon/UI_Icon_Locked.png"
|
||||
Visibility="{Binding IsActiviated,Converter={StaticResource BoolToVisibilityRevertConverter}}">
|
||||
</Image>
|
||||
</Grid>
|
||||
|
||||
</Button.Content>
|
||||
|
||||
<Button.Flyout>
|
||||
<Flyout Placement="Bottom">
|
||||
<shct:DescriptionTextBlock
|
||||
MaxWidth="320"
|
||||
Description="{Binding Description}">
|
||||
<shct:DescriptionTextBlock.Resources>
|
||||
<Style
|
||||
TargetType="TextBlock"
|
||||
BasedOn="{StaticResource BodyTextBlockStyle}">
|
||||
<Setter Property="TextWrapping" Value="Wrap"/>
|
||||
</Style>
|
||||
</shct:DescriptionTextBlock.Resources>
|
||||
</shct:DescriptionTextBlock>
|
||||
</Flyout>
|
||||
</Button.Flyout>
|
||||
</Button>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
@@ -196,25 +224,126 @@
|
||||
Background="Transparent"
|
||||
BorderBrush="{x:Null}"
|
||||
Margin="2,2,0,2">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="auto"/>
|
||||
<ColumnDefinition/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<shci:CachedImage
|
||||
Width="32"
|
||||
Height="32"
|
||||
Source="{Binding Icon}"/>
|
||||
<TextBlock
|
||||
VerticalAlignment="Bottom"
|
||||
HorizontalAlignment="Right"
|
||||
Text="{Binding Info.Level}"/>
|
||||
</Grid>
|
||||
<Button.Content>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="auto"/>
|
||||
<ColumnDefinition Width="44"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Ellipse
|
||||
Grid.Column="0"
|
||||
Fill="#FFDAB79B"
|
||||
Stroke="#FFB29880"/>
|
||||
<shci:CachedImage
|
||||
Grid.Column="0"
|
||||
Width="32"
|
||||
Height="32"
|
||||
Source="{Binding Icon}"/>
|
||||
<Border
|
||||
CornerRadius="{StaticResource CompatCornerRadius}"
|
||||
Background="#FFB29880"
|
||||
Padding="4,0"
|
||||
Width="40"
|
||||
Grid.Column="1"
|
||||
Margin="6,0,0,0"
|
||||
VerticalAlignment="Center"
|
||||
HorizontalAlignment="Center">
|
||||
<TextBlock
|
||||
Margin="0,0,0,2"
|
||||
HorizontalAlignment="Center"
|
||||
Style="{StaticResource BaseTextBlockStyle}"
|
||||
Foreground="#FFFFFFFF"
|
||||
Text="{Binding Info.Level}"/>
|
||||
</Border>
|
||||
</Grid>
|
||||
</Button.Content>
|
||||
<Button.Flyout>
|
||||
<Flyout Placement="Bottom">
|
||||
<StackPanel MaxWidth="320">
|
||||
<shct:DescriptionTextBlock
|
||||
Description="{Binding Description}">
|
||||
<shct:DescriptionTextBlock.Resources>
|
||||
<Style
|
||||
TargetType="TextBlock"
|
||||
BasedOn="{StaticResource BodyTextBlockStyle}">
|
||||
<Setter Property="TextWrapping" Value="Wrap"/>
|
||||
</Style>
|
||||
</shct:DescriptionTextBlock.Resources>
|
||||
</shct:DescriptionTextBlock>
|
||||
<ItemsControl Margin="0,12,0,0" ItemsSource="{Binding Info.Parameters}">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<sc:Setting Margin="0,2,0,0" Header="{Binding Description}" Padding="12,0">
|
||||
<sc:Setting.ActionContent>
|
||||
<TextBlock Text="{Binding Parameter}"/>
|
||||
</sc:Setting.ActionContent>
|
||||
</sc:Setting>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
</StackPanel>
|
||||
</Flyout>
|
||||
</Button.Flyout>
|
||||
</Button>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
</Border>
|
||||
<Border
|
||||
Margin="12,12,12,0"
|
||||
Padding="6"
|
||||
VerticalAlignment="Top"
|
||||
CornerRadius="{StaticResource CompatCornerRadius}"
|
||||
Background="{StaticResource CardBackgroundFillColorSecondary}">
|
||||
<Grid DataContext="{Binding SelectedAvatar.Weapon}">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="auto"/>
|
||||
<ColumnDefinition Width="2*"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Button Padding="0">
|
||||
<Button.Content>
|
||||
<shvcont:ItemIcon
|
||||
Width="48"
|
||||
Height="48"
|
||||
Icon="{Binding Icon}"
|
||||
Quality="{Binding Quality}"/>
|
||||
</Button.Content>
|
||||
<Button.Flyout>
|
||||
<Flyout Placement="Bottom">
|
||||
<shct:DescriptionTextBlock
|
||||
MaxWidth="320"
|
||||
Description="{Binding AffixDescription}">
|
||||
<shct:DescriptionTextBlock.Resources>
|
||||
<Style
|
||||
TargetType="TextBlock"
|
||||
BasedOn="{StaticResource BodyTextBlockStyle}">
|
||||
<Setter Property="TextWrapping" Value="Wrap"/>
|
||||
</Style>
|
||||
</shct:DescriptionTextBlock.Resources>
|
||||
</shct:DescriptionTextBlock>
|
||||
</Flyout>
|
||||
</Button.Flyout>
|
||||
</Button>
|
||||
|
||||
<TextBlock
|
||||
Grid.Column="1"
|
||||
VerticalAlignment="Center"
|
||||
HorizontalAlignment="Center"
|
||||
Text="{Binding Name}"/>
|
||||
<TextBlock
|
||||
Grid.Column="2"
|
||||
VerticalAlignment="Center"
|
||||
HorizontalAlignment="Center"
|
||||
Text="{Binding Level}"/>
|
||||
<TextBlock
|
||||
Grid.Column="3"
|
||||
VerticalAlignment="Center"
|
||||
HorizontalAlignment="Center"
|
||||
Text="{Binding AffixLevel}"/>
|
||||
</Grid>
|
||||
</Border>
|
||||
<Border
|
||||
Margin="12,12,12,0"
|
||||
Padding="6,6,0,6"
|
||||
@@ -233,7 +362,7 @@
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition/>
|
||||
<ColumnDefinition Width="68"/>
|
||||
<ColumnDefinition Width="60"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock
|
||||
Grid.Column="0"
|
||||
@@ -244,6 +373,7 @@
|
||||
Margin="6,0,0,0"
|
||||
Grid.Column="1"
|
||||
Text="{Binding Value2}"
|
||||
Foreground="LimeGreen"
|
||||
Style="{StaticResource CaptionTextBlockStyle}"
|
||||
HorizontalAlignment="Left"/>
|
||||
</Grid>
|
||||
@@ -254,61 +384,90 @@
|
||||
</Border>
|
||||
</StackPanel>
|
||||
|
||||
<ScrollViewer Grid.Column="1" Padding="0,0,12,0">
|
||||
<ScrollViewer Grid.Column="1" Padding="0,0,0,0">
|
||||
<cwucont:AdaptiveGridView
|
||||
DesiredWidth="224"
|
||||
cwua:ItemsReorderAnimation.Duration="0:0:0.1"
|
||||
SelectionMode="None"
|
||||
HorizontalContentAlignment="Stretch"
|
||||
HorizontalAlignment="Left"
|
||||
ItemsSource="{Binding SelectedAvatar.Reliquaries}"
|
||||
Margin="0,12,0,0">
|
||||
<cwucont:AdaptiveGridView.ItemContainerStyle>
|
||||
<Style TargetType="GridViewItem" BasedOn="{StaticResource DefaultGridViewItemStyle}">
|
||||
<Setter Property="Margin" Value="0,0,12,12"/>
|
||||
</Style>
|
||||
</cwucont:AdaptiveGridView.ItemContainerStyle>
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Border
|
||||
Margin="0,0,0,0"
|
||||
HorizontalAlignment="Stretch"
|
||||
CornerRadius="{StaticResource CompatCornerRadius}"
|
||||
Background="{StaticResource CardBackgroundFillColorSecondary}">
|
||||
<StackPanel Margin="6" HorizontalAlignment="Stretch">
|
||||
<Grid>
|
||||
<Grid Margin="6">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="auto"/>
|
||||
<RowDefinition Height="auto"/>
|
||||
<RowDefinition/>
|
||||
</Grid.RowDefinitions>
|
||||
<Grid Grid.Column="0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="auto"/>
|
||||
<ColumnDefinition/>
|
||||
<ColumnDefinition Width="6"/>
|
||||
<ColumnDefinition/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<shvc:ItemIcon
|
||||
Grid.Column="0"
|
||||
HorizontalAlignment="Left"
|
||||
Width="48"
|
||||
Height="48"
|
||||
Icon="{Binding Icon}"
|
||||
Quality="{Binding Quality}"/>
|
||||
<StackPanel Grid.Column="1" Margin="6,0,0,0">
|
||||
<Grid>
|
||||
<TextBlock
|
||||
Text="{Binding Name}"/>
|
||||
<TextBlock
|
||||
|
||||
<Grid
|
||||
Margin="2"
|
||||
Grid.Column="0">
|
||||
<TextBlock
|
||||
Text="{Binding Name}"
|
||||
FontWeight="Bold"
|
||||
Style="{StaticResource CaptionTextBlockStyle}"/>
|
||||
<TextBlock
|
||||
Margin="12,0,0,0"
|
||||
Text="{Binding Level}"
|
||||
FontWeight="Bold"
|
||||
Style="{StaticResource CaptionTextBlockStyle}"
|
||||
HorizontalAlignment="Right"/>
|
||||
</Grid>
|
||||
<Grid Margin="0,10,0,0">
|
||||
<TextBlock
|
||||
</Grid>
|
||||
<Grid Margin="2" Grid.Column="2">
|
||||
<TextBlock
|
||||
Text="{Binding MainProperty.Key}"
|
||||
FontWeight="Bold"
|
||||
Style="{StaticResource CaptionTextBlockStyle}"/>
|
||||
<TextBlock
|
||||
<TextBlock
|
||||
Text="{Binding MainProperty.Value}"
|
||||
FontWeight="Bold"
|
||||
Style="{StaticResource CaptionTextBlockStyle}"
|
||||
HorizontalAlignment="Right"/>
|
||||
</Grid>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</Grid>
|
||||
|
||||
<MenuFlyoutSeparator Margin="-2,4,-2,0"/>
|
||||
<ItemsControl ItemsSource="{Binding SubProperties}">
|
||||
<Rectangle Height="1" Grid.Row="1" Margin="0,6">
|
||||
<Rectangle.Fill>
|
||||
<SolidColorBrush Color="{Binding Quality,Converter={StaticResource QualityColorConverter}}"/>
|
||||
</Rectangle.Fill>
|
||||
</Rectangle>
|
||||
<shci:CachedImage
|
||||
Opacity="0.3"
|
||||
Grid.Row="2"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Bottom"
|
||||
Width="80"
|
||||
Height="80"
|
||||
Source="{Binding Icon}"/>
|
||||
<ItemsControl Grid.Row="2" ItemsSource="{Binding SubProperties}">
|
||||
<ItemsControl.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<cwucont:UniformGrid
|
||||
Columns="2"
|
||||
Rows="5"
|
||||
ColumnSpacing="6"
|
||||
Orientation="Vertical"/>
|
||||
</ItemsPanelTemplate>
|
||||
</ItemsControl.ItemsPanel>
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid Padding="2">
|
||||
<Grid Padding="2" MinWidth="128">
|
||||
<TextBlock
|
||||
Text="{Binding Key}"
|
||||
Style="{StaticResource CaptionTextBlockStyle}"/>
|
||||
@@ -320,7 +479,7 @@
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</Border>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
|
||||
Reference in New Issue
Block a user