CI / Go Backend (push) Canceled after 0s
初始化 monorepo: Go后端(7微服务) + Unity客户端(9模块) + 启动器 HTML5原型: Three.js 3D体素世界, Perlin噪声地形, 原版材质, 22种方块 Minecraft创造模式背包: 双栏布局, 拖拽移动物品, 方向性元件引脚 AI助搭策划文档 + 客户端/服务端骨架 + Docker Compose + CI
132 lines
6.5 KiB
XML
132 lines
6.5 KiB
XML
<local:MyPageRight
|
|
x:Class="PCL.PageHomepageNewsView"
|
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:core="clr-namespace:PCL.Core.UI.Controls;assembly=PCL.Core"
|
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
|
xmlns:i="http://schemas.microsoft.com/xaml/behaviors"
|
|
xmlns:local="clr-namespace:PCL"
|
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
|
xmlns:vm="clr-namespace:PCL.Core.ViewModel.Homepage;assembly=PCL.Core"
|
|
MinWidth="150"
|
|
mc:Ignorable="d">
|
|
<local:MyPageRight.DataContext>
|
|
<vm:NewsViewModel />
|
|
</local:MyPageRight.DataContext>
|
|
|
|
<Grid>
|
|
<ItemsControl ItemsSource="{Binding NewsItems}">
|
|
<ItemsControl.ItemsPanel>
|
|
<ItemsPanelTemplate>
|
|
<core:WaterfallPanel
|
|
Margin="0,0,0,10"
|
|
ColumnSpacing="14"
|
|
LayoutMode="AutoFit"
|
|
MaxItemWidth="240"
|
|
RowSpacing="14"
|
|
VirtualizingPanel.CacheLengthUnit="Item"
|
|
VirtualizingPanel.IsVirtualizing="True"
|
|
VirtualizingPanel.VirtualizationMode="Recycling" />
|
|
</ItemsPanelTemplate>
|
|
</ItemsControl.ItemsPanel>
|
|
<ItemsControl.ItemTemplate>
|
|
<DataTemplate>
|
|
<local:MyCard>
|
|
<Grid Margin="12">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto" />
|
|
<!-- 图片行 -->
|
|
<RowDefinition Height="Auto" />
|
|
<!-- 标题行 -->
|
|
<RowDefinition Height="Auto" />
|
|
<!-- 作者和时间行 -->
|
|
<RowDefinition Height="Auto" />
|
|
<!-- 简介行 -->
|
|
<RowDefinition Height="Auto" />
|
|
</Grid.RowDefinitions>
|
|
|
|
<local:MyImage
|
|
HorizontalAlignment="Stretch"
|
|
CornerRadius="6"
|
|
SnapsToDevicePixels="True"
|
|
Source="{Binding Image}"
|
|
Stretch="UniformToFill"
|
|
ToolTip="{Binding ImageAltText}"
|
|
UseLayoutRounding="True" />
|
|
|
|
<!-- 标题 -->
|
|
<Border
|
|
Grid.Row="1"
|
|
Margin="0,5,0,0"
|
|
Background="{DynamicResource ColorBrushBackground}"
|
|
ClipToBounds="True"
|
|
CornerRadius="6"
|
|
Padding="5,3">
|
|
<TextBlock
|
|
FontSize="16"
|
|
FontWeight="Bold"
|
|
Foreground="{DynamicResource ColorBrush1}"
|
|
Text="{Binding Title}"
|
|
TextWrapping="Wrap" />
|
|
</Border>
|
|
|
|
<!-- 作者和时间 -->
|
|
<Grid Grid.Row="2" Margin="0,5,0,0">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="*" />
|
|
<ColumnDefinition Width="Auto" />
|
|
</Grid.ColumnDefinitions>
|
|
<TextBlock
|
|
Grid.Column="0"
|
|
Foreground="{DynamicResource ColorBrushGray2}"
|
|
Text="{Binding Author}" />
|
|
<TextBlock
|
|
Grid.Column="1"
|
|
Foreground="{DynamicResource ColorBrushGray2}"
|
|
Text="{Binding PublishDate, Converter={StaticResource LocalizationFormatConverter}, ConverterParameter=g}" />
|
|
</Grid>
|
|
|
|
<!-- 简介 -->
|
|
<TextBlock
|
|
Grid.Row="3"
|
|
Margin="0,5,0,0"
|
|
Foreground="{DynamicResource ColorBrushGray4}"
|
|
Text="{Binding Description}"
|
|
TextWrapping="Wrap" />
|
|
|
|
<!-- Read more -->
|
|
<local:MyTextButton
|
|
Grid.Row="4"
|
|
Margin="0,5,5,0"
|
|
HorizontalAlignment="Right"
|
|
Foreground="{DynamicResource ColorBrushGray2}"
|
|
Text="{DynamicResource Launch.Homepage.News.ViewDetail}">
|
|
<i:Interaction.Triggers>
|
|
<i:EventTrigger EventName="Click">
|
|
<i:InvokeCommandAction
|
|
Command="{Binding DataContext.OpenReadCommand,
|
|
RelativeSource={RelativeSource AncestorType=local:MyPageRight}}"
|
|
CommandParameter="{Binding Url}" />
|
|
</i:EventTrigger>
|
|
</i:Interaction.Triggers>
|
|
</local:MyTextButton>
|
|
</Grid>
|
|
</local:MyCard>
|
|
</DataTemplate>
|
|
</ItemsControl.ItemTemplate>
|
|
</ItemsControl>
|
|
|
|
<TextBlock
|
|
Foreground="{DynamicResource ColorBrushRedLight}"
|
|
Text="{Binding ErrorMessage}"
|
|
Visibility="{Binding ErrorMessage, Converter={StaticResource NullToVisibilityConverter}}" />
|
|
|
|
<local:MyCard
|
|
Margin="32"
|
|
HorizontalAlignment="Center"
|
|
VerticalAlignment="Center"
|
|
Visibility="{Binding IsLoading, Converter={StaticResource BooleanToVisibilityConverter}}">
|
|
<local:MyLoading Text="{DynamicResource Launch.Homepage.News.Loading}" x:Name="Load" Margin="20,20,20,17" />
|
|
</local:MyCard>
|
|
</Grid>
|
|
</local:MyPageRight> |