chore: 优化项目结构
|
Before Width: | Height: | Size: 47 KiB After Width: | Height: | Size: 47 KiB |
|
Before Width: | Height: | Size: 6.7 KiB After Width: | Height: | Size: 6.7 KiB |
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 7.3 KiB After Width: | Height: | Size: 7.3 KiB |
|
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 27 KiB |
|
Before Width: | Height: | Size: 56 KiB After Width: | Height: | Size: 56 KiB |
|
Before Width: | Height: | Size: 384 KiB After Width: | Height: | Size: 384 KiB |
|
Before Width: | Height: | Size: 5.1 KiB After Width: | Height: | Size: 5.1 KiB |
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB |
|
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 66 KiB After Width: | Height: | Size: 66 KiB |
|
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 52 KiB After Width: | Height: | Size: 52 KiB |
|
Before Width: | Height: | Size: 72 KiB After Width: | Height: | Size: 72 KiB |
|
Before Width: | Height: | Size: 9.3 KiB After Width: | Height: | Size: 9.3 KiB |
|
Before Width: | Height: | Size: 51 KiB After Width: | Height: | Size: 51 KiB |
|
Before Width: | Height: | Size: 9.9 KiB After Width: | Height: | Size: 9.9 KiB |
|
Before Width: | Height: | Size: 4.7 KiB After Width: | Height: | Size: 4.7 KiB |
|
Before Width: | Height: | Size: 80 KiB After Width: | Height: | Size: 80 KiB |
|
Before Width: | Height: | Size: 4.8 KiB After Width: | Height: | Size: 4.8 KiB |
|
Before Width: | Height: | Size: 614 KiB After Width: | Height: | Size: 614 KiB |
|
Before Width: | Height: | Size: 805 B After Width: | Height: | Size: 805 B |
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.3 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 92 KiB After Width: | Height: | Size: 92 KiB |
|
Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 21 KiB |
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB |
@@ -7,6 +7,19 @@
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Content Include="Assets\Advertisement-1.mp4">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<Content Include="Assets\Advertisement-2.mp4">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Models\StylesInfoData.json" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="CommunityToolkit.Mvvm" Version="8.4.0" />
|
||||
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="9.0.3" />
|
||||
@@ -69,4 +82,36 @@
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Resource Include="Assets\Ankang\ExitScreen.png" />
|
||||
<Resource Include="Assets\BeijingXi\PrimaryScreen.png" />
|
||||
<Resource Include="Assets\Beijing\ArrivalScreen.png" />
|
||||
<Resource Include="Assets\ChengduDong\PrimaryTicketCheckScreen.png" />
|
||||
<Resource Include="Assets\ChengduDong\SecondaryScreen.png" />
|
||||
<Resource Include="Assets\ChengduMetro\ChengduMetro-Icon.png" />
|
||||
<Resource Include="Assets\ChengduMetro\PlatformScreen.png" />
|
||||
<Resource Include="Assets\DaqingDong\ConcourseBridgeScreen.png" />
|
||||
<Resource Include="Assets\FuzhouNan\TicketCheckScreen.png" />
|
||||
<Resource Include="Assets\Fuzhou\TicketCheckScreen.png" />
|
||||
<Resource Include="Assets\GuangdongIntercity\SecondaryScreen.png" />
|
||||
<Resource Include="Assets\Guangyuan\PrimaryScreen.png" />
|
||||
<Resource Include="Assets\Hanzhong\Image.png" />
|
||||
<Resource Include="Assets\Hanzhong\PlatformScreen.png" />
|
||||
<Resource Include="Assets\Harbin\PrimaryScreen.png" />
|
||||
<Resource Include="Assets\Jinanxi\SmallScreen.png" />
|
||||
<Resource Include="Assets\Mianyang\PlatformScreen.png" />
|
||||
<Resource Include="Assets\Shanghai\OutsideScreen.png" />
|
||||
<Resource Include="Assets\Tianjin\image.png" />
|
||||
<Resource Include="Assets\Tianjin\PlatformScreen.png" />
|
||||
<Resource Include="Assets\XuzhouMetro\Background.jpg" />
|
||||
<Resource Include="Assets\XuzhouMetro\Metro.png" />
|
||||
<Resource Include="Assets\XuzhouMetro\PlatformScreen.png" />
|
||||
<Resource Include="Assets\XuzhouMetro\XuzhouMetro-Icon.png" />
|
||||
<Resource Include="Assets\Zibo\ConcourseBridgeScreen.png" />
|
||||
<Resource Include="Assets\Zibo\PlatformScreen.png" />
|
||||
<Resource Include="Assets\Zibo\PrimaryScreen.png" />
|
||||
<Resource Include="Assets\Zibo\SecondaryScreen.png" />
|
||||
<Resource Include="Assets\Zibo\TicketCheckScreen.png" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
|
||||
@@ -5,7 +5,6 @@
|
||||
"Station": "成都东",
|
||||
"Author": "电排骨",
|
||||
"Type": "车站大屏",
|
||||
"ImagePath": "Assets/StyleImages/ChengduDong/SecondaryScreen.png",
|
||||
"Parameters": [
|
||||
"Station",
|
||||
"Text"
|
||||
@@ -17,7 +16,6 @@
|
||||
"Station": "成都东",
|
||||
"Author": "电排骨",
|
||||
"Type": "检票口屏",
|
||||
"ImagePath": "Assets/StyleImages/ChengduDong/PrimaryTicketCheckScreen.png",
|
||||
"Parameters": [
|
||||
"Station",
|
||||
"TicketCheck",
|
||||
@@ -30,7 +28,6 @@
|
||||
"Station": "福州",
|
||||
"Author": "电排骨",
|
||||
"Type": "检票口屏",
|
||||
"ImagePath": "Assets/StyleImages/Fuzhou/TicketCheckScreen.png",
|
||||
"Parameters": [
|
||||
"Station",
|
||||
"TicketCheck",
|
||||
@@ -43,7 +40,6 @@
|
||||
"Station": "福州南",
|
||||
"Author": "电排骨",
|
||||
"Type": "检票口屏",
|
||||
"ImagePath": "Assets/StyleImages/FuzhouNan/TicketCheckScreen.png",
|
||||
"Parameters": [
|
||||
"Station",
|
||||
"TicketCheck",
|
||||
@@ -56,7 +52,6 @@
|
||||
"Station": "北京西",
|
||||
"Author": "电排骨",
|
||||
"Type": "车站大屏",
|
||||
"ImagePath": "Assets/StyleImages/BeijingXi/PrimaryScreen.png",
|
||||
"Parameters": [
|
||||
"Station"
|
||||
]
|
||||
@@ -67,7 +62,6 @@
|
||||
"Station": "哈尔滨",
|
||||
"Author": "电排骨",
|
||||
"Type": "车站大屏",
|
||||
"ImagePath": "Assets/StyleImages/Harbin/PrimaryScreen.png",
|
||||
"Parameters": [
|
||||
"Station",
|
||||
"Text"
|
||||
@@ -79,7 +73,6 @@
|
||||
"Station": "成都地铁",
|
||||
"Author": "电排骨",
|
||||
"Type": "站台屏",
|
||||
"ImagePath": "Assets/StyleImages/ChengduMetro/PlatformScreen.png",
|
||||
"Parameters": [
|
||||
"Station",
|
||||
"Text",
|
||||
@@ -93,7 +86,6 @@
|
||||
"Station": "徐州地铁",
|
||||
"Author": "电排骨",
|
||||
"Type": "站台屏",
|
||||
"ImagePath": "Assets/StyleImages/XuzhouMetro/PlatformScreen.png",
|
||||
"Parameters": [
|
||||
"Station",
|
||||
"Text",
|
||||
@@ -107,7 +99,6 @@
|
||||
"Station": "广元",
|
||||
"Author": "电排骨",
|
||||
"Type": "车站大屏",
|
||||
"ImagePath": "Assets/StyleImages/Guangyuan/PrimaryScreen.png",
|
||||
"Parameters": [
|
||||
"Station",
|
||||
"Text"
|
||||
@@ -119,7 +110,6 @@
|
||||
"Station": "上海",
|
||||
"Author": "电排骨",
|
||||
"Type": "车站大屏",
|
||||
"ImagePath": "Assets/StyleImages/Shanghai/OutsideScreen.png",
|
||||
"Parameters": [
|
||||
"Station"
|
||||
]
|
||||
@@ -130,7 +120,6 @@
|
||||
"Station": "汉中",
|
||||
"Author": "电排骨",
|
||||
"Type": "站台屏",
|
||||
"ImagePath": "Assets/StyleImages/Hanzhong/PlatformScreen.png",
|
||||
"Parameters": [
|
||||
"Station",
|
||||
"Platform",
|
||||
@@ -143,7 +132,6 @@
|
||||
"Station": "天津",
|
||||
"Author": "电排骨",
|
||||
"Type": "站台屏",
|
||||
"ImagePath": "Assets/StyleImages/Tianjin/PlatformScreen.png",
|
||||
"Parameters": [
|
||||
"Station",
|
||||
"Platform",
|
||||
@@ -156,7 +144,6 @@
|
||||
"Station": "绵阳",
|
||||
"Author": "电排骨",
|
||||
"Type": "站台屏",
|
||||
"ImagePath": "Assets/StyleImages/Mianyang/PlatformScreen.png",
|
||||
"Parameters": [
|
||||
"Station",
|
||||
"Platform",
|
||||
@@ -169,7 +156,6 @@
|
||||
"Station": "淄博",
|
||||
"Author": "wxl0430",
|
||||
"Type": "车站大屏",
|
||||
"ImagePath": "Assets/StyleImages/Zibo/PrimaryScreen.png",
|
||||
"Parameters": [
|
||||
"Station"
|
||||
]
|
||||
@@ -180,7 +166,6 @@
|
||||
"Station": "淄博",
|
||||
"Author": "wxl0430",
|
||||
"Type": "车站大屏",
|
||||
"ImagePath": "Assets/StyleImages/Zibo/SecondaryScreen.png",
|
||||
"Parameters": [
|
||||
"Station"
|
||||
]
|
||||
@@ -191,7 +176,6 @@
|
||||
"Station": "淄博",
|
||||
"Author": "wxl0430",
|
||||
"Type": "检票口屏",
|
||||
"ImagePath": "Assets/StyleImages/Zibo/TicketCheckScreen.png",
|
||||
"Parameters": [
|
||||
"Station",
|
||||
"TicketCheck",
|
||||
@@ -204,7 +188,6 @@
|
||||
"Station": "淄博",
|
||||
"Author": "wxl0430",
|
||||
"Type": "站台屏",
|
||||
"ImagePath": "Assets/StyleImages/Zibo/PlatformScreen.png",
|
||||
"Parameters": [
|
||||
"Station",
|
||||
"Platform",
|
||||
@@ -218,7 +201,6 @@
|
||||
"Station": "淄博",
|
||||
"Author": "wxl0430",
|
||||
"Type": "走廊出发屏",
|
||||
"ImagePath": "Assets/StyleImages/Zibo/ConcourseBridgeScreen.png",
|
||||
"Parameters": [
|
||||
"Station",
|
||||
"Platform",
|
||||
@@ -231,7 +213,6 @@
|
||||
"Station": "济南西",
|
||||
"Author": "wxl0430",
|
||||
"Type": "车站大屏",
|
||||
"ImagePath": "Assets/StyleImages/Jinanxi/SmallScreen.png",
|
||||
"Parameters": [
|
||||
"Station"
|
||||
]
|
||||
@@ -242,7 +223,6 @@
|
||||
"Station": "广东城际",
|
||||
"Author": "电排骨",
|
||||
"Type": "车站大屏",
|
||||
"ImagePath": "Assets/StyleImages/GuangdongIntercity/SecondaryScreen.png",
|
||||
"Parameters": [
|
||||
"Station",
|
||||
"Text"
|
||||
@@ -254,7 +234,6 @@
|
||||
"Station": "安康",
|
||||
"Author": "电排骨",
|
||||
"Type": "出站口屏",
|
||||
"ImagePath": "Assets/StyleImages/Ankang/ExitScreen.png",
|
||||
"Parameters": [
|
||||
"Station",
|
||||
"Text"
|
||||
@@ -266,7 +245,6 @@
|
||||
"Station": "北京",
|
||||
"Author": "wxl0430",
|
||||
"Type": "走廊到达屏",
|
||||
"ImagePath": "Assets/StyleImages/Beijing/ArrivalScreen.png",
|
||||
"Parameters": [
|
||||
"Station",
|
||||
"Platform"
|
||||
@@ -278,7 +256,6 @@
|
||||
"Station": "大庆东",
|
||||
"Author": "wxl0430",
|
||||
"Type": "走廊出发屏",
|
||||
"ImagePath": "Assets/StyleImages/DaqingDong/ConcourseBridgeScreen.png",
|
||||
"Parameters": [
|
||||
"Station",
|
||||
"Platform",
|
||||
@@ -1,11 +1,13 @@
|
||||
namespace CRSim.Models
|
||||
using System.Reflection;
|
||||
using System.Text.Json;
|
||||
|
||||
namespace CRSim.ScreenSimulator.Models
|
||||
{
|
||||
public class StylesInfoDataItem
|
||||
{
|
||||
public string UniqueId { get; set; }
|
||||
public string Title { get; set; }
|
||||
public string Station { get; set; }
|
||||
public string ImagePath { get; set; }
|
||||
public string Author { get; set; }
|
||||
public string Type { get; set; }
|
||||
public Type ViewType
|
||||
@@ -21,7 +23,7 @@
|
||||
{
|
||||
get
|
||||
{
|
||||
return new Uri($"pack://application:,,,/{ImagePath}");
|
||||
return new Uri($"pack://application:,,,/CRSim.ScreenSimulator;component/Assets/{UniqueId.Replace('.', '/')}.png");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -66,7 +68,7 @@
|
||||
private static string ReadStylesData()
|
||||
{
|
||||
var assembly = typeof(StylesInfoDataSource).Assembly;
|
||||
var resourceName = "CRSim.Models.StylesInfoData.json";
|
||||
var resourceName = "CRSim.ScreenSimulator.Models.StylesInfoData.json";
|
||||
|
||||
using var stream = assembly.GetManifestResourceStream(resourceName);
|
||||
using var reader = new System.IO.StreamReader(stream);
|
||||
@@ -0,0 +1,27 @@
|
||||
using CRSim.ScreenSimulator.Models;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
|
||||
namespace CRSim.ScreenSimulator.Services
|
||||
{
|
||||
public static class ServiceCollectionExtensions
|
||||
{
|
||||
public static IServiceCollection AddScreenSimulatorServices(this IServiceCollection services)
|
||||
{
|
||||
foreach (var uniqueId in StylesInfoDataSource.Instance.StylesInfo.Select(x => x.UniqueId))
|
||||
{
|
||||
var viewModelType = Type.GetType($"CRSim.ScreenSimulator.ViewModels.{uniqueId}ViewModel");
|
||||
if (viewModelType != null)
|
||||
{
|
||||
services.AddTransient(viewModelType);
|
||||
}
|
||||
|
||||
var viewType = Type.GetType($"CRSim.ScreenSimulator.Views.{uniqueId}View");
|
||||
if (viewType != null)
|
||||
{
|
||||
services.AddTransient(viewType);
|
||||
}
|
||||
}
|
||||
return services;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -47,7 +47,7 @@
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Image Grid.Column="0" Source="pack://application:,,,/Assets/StyleImages/ChengduMetro/ChengduMetro-Icon.png" Height="30" Margin="12,2,0,2"/>
|
||||
<Image Grid.Column="0" Source="pack://application:,,,/CRSim.ScreenSimulator;component/Assets/ChengduMetro/ChengduMetro-Icon.png" Height="30" Margin="12,2,0,2"/>
|
||||
<TextBlock Grid.Column="1" Text="{Binding ViewModel.CurrentTime,Converter={StaticResource DateTimeToDateConverter}}" FontSize="20" VerticalAlignment="Center" Foreground="Orange" Margin="140,0,0,0"/>
|
||||
<TextBlock Grid.Column="2" Text="{Binding ViewModel.CurrentTime,Converter={StaticResource DateTimeToWeekdayConverter}}" FontSize="20" VerticalAlignment="Center" Foreground="Orange" Margin="72,0,0,0"/>
|
||||
<TextBlock Grid.Column="4" Text="{Binding ViewModel.CurrentTime,Converter={StaticResource DateTimeToWeekdayEnglishConverter}}" FontSize="20" VerticalAlignment="Center" Foreground="Orange" Margin="0,0,60,0"/>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Grid.Column="0" Foreground="#0089FF" Text="{Binding Screen[0].DepartureTime,Converter={StaticResource DateTimeToStringConverter}}" FontSize="32" Margin="64,0,0,0" FontWeight="Bold"/>
|
||||
<TextBlock Grid.Column="1" Foreground="#0089FF" Text="开" FontSize="32" Margin="4,0,8,0" FontWeight="Bold"/>
|
||||
<Image Grid.Column="2" Source="pack://application:,,,/Assets/StyleImages/Hanzhong/Image.png" Height="{Binding ActualHeight,ElementName=Panel}"/>
|
||||
<Image Grid.Column="2" Source="pack://application:,,,/CRSim.ScreenSimulator;component/Assets/Hanzhong/Image.png" Height="{Binding ActualHeight,ElementName=Panel}"/>
|
||||
<Rectangle Grid.Column="3" Fill="#0089FF" Height="{Binding ActualHeight,ElementName=Panel}"/>
|
||||
<TextBlock Grid.Column="4" Text="{Binding Screen[0].TrainNumber}" Foreground="#FE5649" Background="#0089FF" FontSize="32" FontWeight="Bold"/>
|
||||
<Rectangle Grid.Column="5" Fill="#0089FF" Height="{Binding ActualHeight,ElementName=Panel}" Width="8"/>
|
||||
|
||||
@@ -49,7 +49,7 @@
|
||||
<Rectangle Grid.Column="1" Fill="#830DFF"/>
|
||||
<Border Grid.Column="2" CornerRadius="0,4,4,0" Background="Yellow" x:Name="Panel">
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Grid.Column="0" Source="pack://application:,,,/Assets/StyleImages/Tianjin/Image.png" Height="{Binding ActualHeight,ElementName=Panel}"/>
|
||||
<Image Grid.Column="0" Source="pack://application:,,,/CRSim.ScreenSimulator;component/Assets/Tianjin/Image.png" Height="{Binding ActualHeight,ElementName=Panel}"/>
|
||||
<TextBlock Grid.Column="1" Text="{Binding Screen[0].DepartureTime,Converter={StaticResource DateTimeToStringConverter}}" Foreground="Black" VerticalAlignment="Center" Padding="12,0,64,0"/>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
</Window.Resources>
|
||||
<Grid>
|
||||
<Grid.Background>
|
||||
<ImageBrush ImageSource="pack://application:,,,/Assets/StyleImages/XuzhouMetro/Background.jpg" Stretch="UniformToFill"/>
|
||||
<ImageBrush ImageSource="pack://application:,,,/CRSim.ScreenSimulator;component/Assets/XuzhouMetro/Background.jpg" Stretch="UniformToFill"/>
|
||||
</Grid.Background>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
@@ -34,7 +34,7 @@
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Image Grid.Row="0" Grid.Column="0" Source="pack://application:,,,/Assets/StyleImages/XuzhouMetro/XuzhouMetro-Icon.png" Width="140" Margin="0,6"/>
|
||||
<Image Grid.Row="0" Grid.Column="0" Source="pack://application:,,,/CRSim.ScreenSimulator;component/Assets/XuzhouMetro/XuzhouMetro-Icon.png" Width="140" Margin="0,6"/>
|
||||
<Grid Grid.Row="0" Grid.Column="1">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
@@ -56,7 +56,7 @@
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel Grid.Row="0" Orientation="Horizontal" Margin="12,12">
|
||||
<TextBlock Text="本次列车终点站" FontSize="17" Foreground="Yellow" VerticalAlignment="Center"/>
|
||||
<Image Height="17" Source="pack://application:,,,/Assets/StyleImages/XuzhouMetro/Metro.png" Margin="4,0,0,0"/>
|
||||
<Image Height="17" Source="pack://application:,,,/CRSim.ScreenSimulator;component/Assets/XuzhouMetro/Metro.png" Margin="4,0,0,0"/>
|
||||
</StackPanel>
|
||||
<TextBlock Grid.Row="1" Text="{Binding ViewModel.FirstTrain.Terminal}" FontSize="25" Foreground="White" TextWrapping="Wrap" TextAlignment="Center" VerticalAlignment="Center"/>
|
||||
<TextBlock Grid.Row="2" Text="到站时间" FontSize="17" Foreground="Yellow" VerticalAlignment="Center" Margin="12,0,0,0"/>
|
||||
@@ -79,7 +79,7 @@
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel Grid.Row="0" Orientation="Horizontal" Margin="12,10">
|
||||
<TextBlock Text="下次列车终点站" FontSize="17" Foreground="Yellow" VerticalAlignment="Center"/>
|
||||
<Image Height="17" Source="pack://application:,,,/Assets/StyleImages/XuzhouMetro/Metro.png" Margin="4,0,0,0"/>
|
||||
<Image Height="17" Source="pack://application:,,,/CRSim.ScreenSimulator;component/Assets/XuzhouMetro/Metro.png" Margin="4,0,0,0"/>
|
||||
</StackPanel>
|
||||
<TextBlock Grid.Row="1" Text="{Binding ViewModel.SecondTrain.Terminal}" FontSize="21" Foreground="White" TextWrapping="Wrap" TextAlignment="Center" VerticalAlignment="Center"/>
|
||||
<TextBlock Grid.Row="2" Text="到站时间" FontSize="17" Foreground="Yellow" VerticalAlignment="Center" Margin="12,0,0,0"/>
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
namespace CRSim
|
||||
using CRSim.ScreenSimulator.Services;
|
||||
|
||||
namespace CRSim
|
||||
{
|
||||
/// <summary>
|
||||
/// Interaction logic for App.xaml
|
||||
@@ -38,53 +40,8 @@
|
||||
services.AddTransient<WebsiteSimulationPageViewModel>();
|
||||
|
||||
services.AddTransient<WebsiteSimulator.Simulator>();
|
||||
services.AddScreenSimulatorServices();
|
||||
|
||||
services.AddTransient<ScreenSimulator.ViewModels.ChengduDong.SecondaryScreenViewModel>();
|
||||
services.AddTransient<ScreenSimulator.Views.ChengduDong.SecondaryScreenView>();
|
||||
services.AddTransient<ScreenSimulator.ViewModels.ChengduDong.PrimaryTicketCheckScreenViewModel>();
|
||||
services.AddTransient<ScreenSimulator.Views.ChengduDong.PrimaryTicketCheckScreenView>();
|
||||
services.AddTransient<ScreenSimulator.ViewModels.BeijingXi.PrimaryScreenViewModel>();
|
||||
services.AddTransient<ScreenSimulator.Views.BeijingXi.PrimaryScreenView>();
|
||||
services.AddTransient<ScreenSimulator.ViewModels.Harbin.PrimaryScreenViewModel>();
|
||||
services.AddTransient<ScreenSimulator.Views.Harbin.PrimaryScreenView>();
|
||||
services.AddTransient<ScreenSimulator.ViewModels.Guangyuan.OutsideScreenViewModel>();
|
||||
services.AddTransient<ScreenSimulator.Views.Guangyuan.PrimaryScreenView>();
|
||||
services.AddTransient<ScreenSimulator.ViewModels.ChengduMetro.PlatformScreenViewModel>();
|
||||
services.AddTransient<ScreenSimulator.Views.ChengduMetro.PlatformScreenView>();
|
||||
services.AddTransient<ScreenSimulator.ViewModels.XuzhouMetro.PlatformScreenViewModel>();
|
||||
services.AddTransient<ScreenSimulator.Views.XuzhouMetro.PlatformScreenView>();
|
||||
services.AddTransient<ScreenSimulator.ViewModels.Shanghai.OutsideScreenViewModel>();
|
||||
services.AddTransient<ScreenSimulator.Views.Shanghai.OutsideScreenView>();
|
||||
services.AddTransient<ScreenSimulator.ViewModels.Hanzhong.PlatformScreenViewModel>();
|
||||
services.AddTransient<ScreenSimulator.Views.Hanzhong.PlatformScreenView>();
|
||||
services.AddTransient<ScreenSimulator.ViewModels.Zibo.PrimaryScreenViewModel>();
|
||||
services.AddTransient<ScreenSimulator.Views.Zibo.PrimaryScreenView>();
|
||||
services.AddTransient<ScreenSimulator.ViewModels.Zibo.SecondaryScreenViewModel>();
|
||||
services.AddTransient<ScreenSimulator.Views.Zibo.SecondaryScreenView>();
|
||||
services.AddTransient<ScreenSimulator.ViewModels.Zibo.TicketCheckScreenViewModel>();
|
||||
services.AddTransient<ScreenSimulator.Views.Zibo.TicketCheckScreenView>();
|
||||
services.AddTransient<ScreenSimulator.ViewModels.Zibo.PlatformScreenViewModel>();
|
||||
services.AddTransient<ScreenSimulator.Views.Zibo.PlatformScreenView>();
|
||||
services.AddTransient<ScreenSimulator.ViewModels.Zibo.ConcourseBridgeScreenViewModel>();
|
||||
services.AddTransient<ScreenSimulator.Views.Zibo.ConcourseBridgeScreenView>();
|
||||
services.AddTransient<ScreenSimulator.ViewModels.Jinanxi.SmallScreenViewModel>();
|
||||
services.AddTransient<ScreenSimulator.Views.Jinanxi.SmallScreenView>();
|
||||
services.AddTransient<ScreenSimulator.ViewModels.GuangdongIntercity.SecondaryScreenViewModel>();
|
||||
services.AddTransient<ScreenSimulator.Views.GuangdongIntercity.SecondaryScreenView>();
|
||||
services.AddTransient<ScreenSimulator.ViewModels.Tianjin.PlatformScreenViewModel>();
|
||||
services.AddTransient<ScreenSimulator.Views.Tianjin.PlatformScreenView>();
|
||||
services.AddTransient<ScreenSimulator.ViewModels.Mianyang.PlatformScreenViewModel>();
|
||||
services.AddTransient<ScreenSimulator.Views.Mianyang.PlatformScreenView>();
|
||||
services.AddTransient<ScreenSimulator.ViewModels.Fuzhou.TicketCheckScreenViewModel>();
|
||||
services.AddTransient<ScreenSimulator.Views.Fuzhou.TicketCheckScreenView>();
|
||||
services.AddTransient<ScreenSimulator.ViewModels.FuzhouNan.TicketCheckScreenViewModel>();
|
||||
services.AddTransient<ScreenSimulator.Views.FuzhouNan.TicketCheckScreenView>();
|
||||
services.AddTransient<ScreenSimulator.ViewModels.Ankang.ExitScreenViewModel>();
|
||||
services.AddTransient<ScreenSimulator.Views.Ankang.ExitScreenView>();
|
||||
services.AddTransient<ScreenSimulator.Views.Beijing.ArrivalScreenView>();
|
||||
services.AddTransient<ScreenSimulator.ViewModels.Beijing.ArrivalScreenViewModel>();
|
||||
services.AddTransient<ScreenSimulator.Views.DaqingDong.ConcourseBridgeScreenView>();
|
||||
services.AddTransient<ScreenSimulator.ViewModels.DaqingDong.ConcourseBridgeScreenViewModel>();
|
||||
}).Build();
|
||||
|
||||
[STAThread]
|
||||
|
||||
@@ -14,24 +14,8 @@
|
||||
|
||||
<ItemGroup>
|
||||
<ApplicationDefinition Remove="App.xaml" />
|
||||
<None Remove="Assets\Advertisement-2.mp4" />
|
||||
<None Remove="Assets\HomeHeaderTiles\Header-docs.png" />
|
||||
<None Remove="Assets\HomeHeaderTiles\Header-docs.svg" />
|
||||
<None Remove="Assets\StyleImages\Ankang\ExitScreen.png" />
|
||||
<None Remove="Assets\StyleImages\FuzhouNan\TicketCheckScreen.png" />
|
||||
<None Remove="Assets\StyleImages\Fuzhou\TicketCheckScreen.png" />
|
||||
<None Remove="Assets\StyleImages\Mianyang\PlatformScreen.png" />
|
||||
<None Remove="Assets\StyleImages\Tianjin\image.png" />
|
||||
<None Remove="Assets\StyleImages\Tianjin\PlatformScreen.png" />
|
||||
<None Remove="Assets\StyleImages\XuzhouMetro\Background.jpg" />
|
||||
<None Remove="Assets\StyleImages\XuzhouMetro\Metro.png" />
|
||||
<None Remove="Assets\StyleImages\XuzhouMetro\XuzhouMetro-Icon.png" />
|
||||
<Content Include="Assets\Advertisement-1.mp4">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<Content Include="Assets\Advertisement-2.mp4">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<Content Include="Assets\CRSimIcon.ico" />
|
||||
<Resource Include="Assets\ControlImages\Data Management.png" />
|
||||
<Resource Include="Assets\ControlImages\Gate Simulation.png" />
|
||||
@@ -45,38 +29,8 @@
|
||||
<Resource Include="Assets\HomeHeaderTiles\Header-Afdian.png" />
|
||||
<Resource Include="Assets\HomeHeaderTiles\Header-docs.png" />
|
||||
<Resource Include="Assets\HomeHeaderTiles\Header-QQ.png" />
|
||||
<Resource Include="Assets\StyleImages\Ankang\ExitScreen.png" />
|
||||
<Resource Include="Assets\StyleImages\BeijingXi\PrimaryScreen.png" />
|
||||
<Resource Include="Assets\StyleImages\ChengduDong\PrimaryTicketCheckScreen.png" />
|
||||
<Resource Include="Assets\StyleImages\ChengduDong\SecondaryScreen.png" />
|
||||
<Resource Include="Assets\StyleImages\XuzhouMetro\Background.jpg" />
|
||||
<Resource Include="Assets\StyleImages\XuzhouMetro\Metro.png" />
|
||||
<Resource Include="Assets\StyleImages\XuzhouMetro\PlatformScreen.png" />
|
||||
<Resource Include="Assets\StyleImages\ChengduMetro\ChengduMetro-Icon.png" />
|
||||
<Resource Include="Assets\StyleImages\ChengduMetro\PlatformScreen.png" />
|
||||
<Resource Include="Assets\StyleImages\FuzhouNan\TicketCheckScreen.png" />
|
||||
<Resource Include="Assets\StyleImages\Fuzhou\TicketCheckScreen.png" />
|
||||
<Resource Include="Assets\StyleImages\GuangdongIntercity\SecondaryScreen.png" />
|
||||
<Resource Include="Assets\StyleImages\Guangyuan\PrimaryScreen.png" />
|
||||
<Resource Include="Assets\StyleImages\Hanzhong\Image.png" />
|
||||
<Resource Include="Assets\StyleImages\Hanzhong\PlatformScreen.png" />
|
||||
<Resource Include="Assets\StyleImages\Harbin\PrimaryScreen.png" />
|
||||
<Resource Include="Assets\StyleImages\Jinanxi\SmallScreen.png" />
|
||||
<Resource Include="Assets\StyleImages\Mianyang\PlatformScreen.png" />
|
||||
<Resource Include="Assets\StyleImages\Shanghai\OutsideScreen.png" />
|
||||
<Resource Include="Assets\StyleImages\Tianjin\image.png" />
|
||||
<Resource Include="Assets\StyleImages\Tianjin\PlatformScreen.png" />
|
||||
<Resource Include="Assets\StyleImages\XuzhouMetro\XuzhouMetro-Icon.png" />
|
||||
<Resource Include="Assets\StyleImages\Zibo\PrimaryScreen.png" />
|
||||
<Resource Include="Assets\StyleImages\Zibo\SecondaryScreen.png" />
|
||||
<Resource Include="Assets\StyleImages\Zibo\TicketCheckScreen.png" />
|
||||
<Resource Include="Assets\StyleImages\Zibo\PlatformScreen.png" />
|
||||
<Resource Include="Assets\StyleImages\Zibo\ConcourseBridgeScreen.png" />
|
||||
<Resource Include="Assets\StyleImages\Beijing\ArrivalScreen.png" />
|
||||
<Resource Include="Assets\StyleImages\DaqingDong\ConcourseBridgeScreen.png" />
|
||||
<Resource Include="Assets\win11-dashboard.dark.png" />
|
||||
<Resource Include="Assets\win11-dashboard.light.png" />
|
||||
<EmbeddedResource Include="Models\StylesInfoData.json" />
|
||||
<EmbeddedResource Include="Models\ControlsInfoData.json" />
|
||||
<Page Include="App.xaml" />
|
||||
</ItemGroup>
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
namespace CRSim.ViewModels;
|
||||
using CRSim.ScreenSimulator.Models;
|
||||
|
||||
namespace CRSim.ViewModels;
|
||||
|
||||
public partial class ScreenSimulationPageViewModel : ObservableObject
|
||||
{
|
||||
|
||||