mirror of
https://github.com/denglihong2007/CRSim
synced 2026-05-14 23:55:36 +08:00
feat: #172 添加昆明长水国际机场大屏
This commit is contained in:
Binary file not shown.
|
After Width: | Height: | Size: 36 KiB |
@@ -17,6 +17,7 @@
|
||||
<None Remove="Assets\ChengduShuangliuAirport\logo-GTJT.png" />
|
||||
<None Remove="Assets\ChengduShuangliuAirport\planetakingoff.png" />
|
||||
<None Remove="Assets\ChengduShuangliuAirport\SecondaryScreen.png" />
|
||||
<None Remove="Assets\KunmingChangshuiAirport\PrimaryScreen.png" />
|
||||
<None Remove="Assets\Niuzhou\PrimaryScreen.png" />
|
||||
<None Remove="Assets\ShenyangBei\PlatformScreen.png" />
|
||||
<None Remove="Assets\TianjinMetro\PlatformScreen.png" />
|
||||
@@ -55,6 +56,9 @@
|
||||
<Compile Update="Views\ChengduDong\SecondaryScreenView.xaml.cs">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Update="Views\KunmingChangshuiAirport\PrimaryScreenView.xaml.cs">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Update="Views\ChengduShuangliuAirport\SecondaryScreenView.xaml.cs">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
@@ -135,6 +139,7 @@
|
||||
<Resource Include="Assets\Harbin\PrimaryScreen.png" />
|
||||
<Resource Include="Assets\HarbinXi\PlatformScreen.png" />
|
||||
<Resource Include="Assets\Jinanxi\SmallScreen.png" />
|
||||
<Resource Include="Assets\KunmingChangshuiAirport\PrimaryScreen.png" />
|
||||
<Resource Include="Assets\Mianyang\PlatformScreen.png" />
|
||||
<Resource Include="Assets\Niuzhou\PrimaryScreen.png" />
|
||||
<Resource Include="Assets\Shanghai\OutsideScreen.png" />
|
||||
|
||||
@@ -139,6 +139,17 @@
|
||||
"Text"
|
||||
]
|
||||
},
|
||||
{
|
||||
"UniqueId": "KunmingChangshuiAirport.PrimaryScreen",
|
||||
"Title": "昆明长水机场主要看板",
|
||||
"Region": "昆明",
|
||||
"Author": "电排骨",
|
||||
"Type": "车站大屏",
|
||||
"Parameters": [
|
||||
"Station",
|
||||
"Text"
|
||||
]
|
||||
},
|
||||
{
|
||||
"UniqueId": "Shanghai.OutsideScreen",
|
||||
"Title": "上海站站外看板",
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
using CRSim.Core.Models;
|
||||
using CRSim.Core.Services;
|
||||
namespace CRSim.ScreenSimulator.ViewModels.KunmingChangshuiAirport
|
||||
{
|
||||
public class PrimaryScreenViewModel : ScreenViewModel
|
||||
{
|
||||
public PrimaryScreenViewModel(ITimeService timeService, ISettingsService settingsService)
|
||||
: base(timeService, settingsService)
|
||||
{
|
||||
Text = $"如需要任何帮助,或有相关建议,请拨打96566。";
|
||||
ItemsPerPage = 20;
|
||||
ScreenCount = 1;
|
||||
StationType = StationType.Departure;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,171 @@
|
||||
<views:BaseScreenView x:Class="CRSim.ScreenSimulator.Views.KunmingChangshuiAirport.PrimaryScreenView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:local="clr-namespace:CRSim.ScreenSimulator.Views.KunmingChangshuiAirport"
|
||||
mc:Ignorable="d"
|
||||
xmlns:converters="clr-namespace:CRSim.ScreenSimulator.Converters"
|
||||
xmlns:converters1="clr-namespace:CRSim.Shared.Converters;assembly=CRSim.Shared"
|
||||
xmlns:views="clr-namespace:CRSim.ScreenSimulator.Views"
|
||||
FontFamily="微软雅黑" FontSize="14" Foreground="#BBD9FE" Background="#333C51">
|
||||
<Window.Resources>
|
||||
<converters1:ListToStringConverter x:Key="ListToStringConverter" Separator=", " />
|
||||
<converters1:EmptyToVisibilityConverter x:Key="EmptyToVisibilityConverter" />
|
||||
<converters1:DateTimeToStringConverter x:Key="DateTimeToStringConverter" Format="HH:mm" />
|
||||
<converters:NumberToImageConverter x:Key="TrainNumberToImageConverter" />
|
||||
<converters:IntAddOneConverter x:Key="IntAddOneConverter" />
|
||||
<converters:ChineseToPinyinConverter x:Key="ChineseToPinyinConverter" Upper="False"/>
|
||||
<converters:TrainStateConverter x:Key="TrainStateConverter" WaitingText="" CheckInText="Boarding" StopCheckInText="Gate Closed"/>
|
||||
<converters:TrainStateColorConverter x:Key="TrainStateColorConverter" WaitingColor="Transparent" CheckInColor="#31D9E8" StopCheckInColor="#9D8A84"/>
|
||||
<Style TargetType="DataGridColumnHeader">
|
||||
<Setter Property="BorderBrush" Value="Transparent"/>
|
||||
<Setter Property="BorderThickness" Value="0"/>
|
||||
<Setter Property="Background" Value="#333C51"/>
|
||||
</Style>
|
||||
<Style x:Key="CommonHeaderStyle" TargetType="TextBlock">
|
||||
<Setter Property="TextAlignment" Value="Left"/>
|
||||
<Setter Property="Foreground" Value="#BBD9FE"/>
|
||||
</Style>
|
||||
<Style x:Key="CommonTextBlockStyle" TargetType="TextBlock">
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
<Setter Property="TextAlignment" Value="Left"/>
|
||||
<Setter Property="Foreground" Value="#BBD9FE"/>
|
||||
</Style>
|
||||
<Style x:Key="CommonRowStyle" TargetType="DataGridRow">
|
||||
<Setter Property="Background">
|
||||
<Setter.Value>
|
||||
<LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
|
||||
<GradientStop Color="#25262B" Offset="0.0" />
|
||||
<GradientStop Color="#25262B" Offset="0.5" />
|
||||
<GradientStop Color="#333C51" Offset="1.0" />
|
||||
</LinearGradientBrush>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
</Window.Resources>
|
||||
<StackPanel Orientation="Vertical">
|
||||
<views:BaseDataGrid ItemsSource="{Binding ScreenA}" RowHeight="31"
|
||||
RowStyle="{StaticResource CommonRowStyle}">
|
||||
<DataGrid.Columns>
|
||||
<DataGridTextColumn Binding="{Binding DepartureTime, Converter={StaticResource DateTimeToStringConverter}}" MinWidth="60">
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<StackPanel Orientation="Vertical" Width="{Binding RelativeSource={RelativeSource AncestorType=DataGridColumnHeader}, Path=ActualWidth}">
|
||||
<TextBlock Text="计划时间" Style="{StaticResource CommonHeaderStyle}"/>
|
||||
<TextBlock Text="SCHED" Style="{StaticResource CommonHeaderStyle}"/>
|
||||
</StackPanel>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
<DataGridTextColumn.ElementStyle>
|
||||
<Style TargetType="TextBlock" BasedOn="{StaticResource CommonTextBlockStyle}"/>
|
||||
</DataGridTextColumn.ElementStyle>
|
||||
</DataGridTextColumn>
|
||||
<DataGridTextColumn Binding="{Binding TrainNumber}" MinWidth="72">
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<StackPanel Orientation="Vertical" Width="{Binding RelativeSource={RelativeSource AncestorType=DataGridColumnHeader}, Path=ActualWidth}">
|
||||
<TextBlock Text="航班号" Style="{StaticResource CommonHeaderStyle}"/>
|
||||
<TextBlock Text="FLIGHT" Style="{StaticResource CommonHeaderStyle}"/>
|
||||
</StackPanel>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
<DataGridTextColumn.ElementStyle>
|
||||
<Style TargetType="TextBlock" BasedOn="{StaticResource CommonTextBlockStyle}"/>
|
||||
</DataGridTextColumn.ElementStyle>
|
||||
</DataGridTextColumn>
|
||||
<DataGridTextColumn Binding="{Binding Terminal,Converter={StaticResource ChineseToPinyinConverter}}" MinWidth="110">
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<StackPanel Orientation="Vertical" Width="{Binding RelativeSource={RelativeSource AncestorType=DataGridColumnHeader}, Path=ActualWidth}">
|
||||
<TextBlock Text="目的/经停站" Style="{StaticResource CommonHeaderStyle}"/>
|
||||
<TextBlock Text="TO/VIA" Style="{StaticResource CommonHeaderStyle}"/>
|
||||
</StackPanel>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
<DataGridTextColumn.ElementStyle>
|
||||
<Style TargetType="TextBlock" BasedOn="{StaticResource CommonTextBlockStyle}"/>
|
||||
</DataGridTextColumn.ElementStyle>
|
||||
</DataGridTextColumn>
|
||||
<DataGridTemplateColumn MinWidth="47">
|
||||
<DataGridTemplateColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<StackPanel Orientation="Vertical" Width="{Binding RelativeSource={RelativeSource AncestorType=DataGridColumnHeader}, Path=ActualWidth}">
|
||||
<TextBlock Text="登机口" Style="{StaticResource CommonHeaderStyle}"/>
|
||||
<TextBlock Text="GATE" Style="{StaticResource CommonHeaderStyle}"/>
|
||||
</StackPanel>
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.HeaderTemplate>
|
||||
<DataGridTemplateColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<Border Background="Yellow" Width="23" Height="23">
|
||||
<TextBlock Text="{Binding TicketChecks,Converter={StaticResource ListToStringConverter}}" Foreground="Black"
|
||||
VerticalAlignment="Center" TextAlignment="Center"/>
|
||||
</Border>
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.CellTemplate>
|
||||
</DataGridTemplateColumn>
|
||||
<DataGridTemplateColumn MinWidth="110">
|
||||
<DataGridTemplateColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<StackPanel Orientation="Vertical" Width="{Binding RelativeSource={RelativeSource AncestorType=DataGridColumnHeader}, Path=ActualWidth}">
|
||||
<TextBlock Text="航班状态" Style="{StaticResource CommonHeaderStyle}"/>
|
||||
<TextBlock Text="STATUS" Style="{StaticResource CommonHeaderStyle}"/>
|
||||
</StackPanel>
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.HeaderTemplate>
|
||||
<DataGridTemplateColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<Border>
|
||||
<Border.Background>
|
||||
<MultiBinding Converter="{StaticResource TrainStateColorConverter}">
|
||||
<Binding Path="ArrivalTime" />
|
||||
<Binding Path="DepartureTime" />
|
||||
<Binding Path="State" />
|
||||
</MultiBinding>
|
||||
</Border.Background>
|
||||
<TextBlock Foreground="White" VerticalAlignment="Center">
|
||||
<TextBlock.Text>
|
||||
<MultiBinding Mode="OneWay" Converter="{StaticResource TrainStateConverter}">
|
||||
<Binding Path="ArrivalTime" />
|
||||
<Binding Path="DepartureTime" />
|
||||
<Binding Path="State" />
|
||||
</MultiBinding>
|
||||
</TextBlock.Text>
|
||||
</TextBlock>
|
||||
</Border>
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.CellTemplate>
|
||||
</DataGridTemplateColumn>
|
||||
</DataGrid.Columns>
|
||||
</views:BaseDataGrid>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock VerticalAlignment="Center" Grid.Column="0">
|
||||
<TextBlock.Text>
|
||||
<MultiBinding StringFormat="{}本屏显示时间:{0}-{1}">
|
||||
<Binding Path="ScreenA[0].DepartureTime">
|
||||
<Binding.Converter>
|
||||
<converters1:DateTimeToStringConverter Format="HH:mm"/>
|
||||
</Binding.Converter>
|
||||
</Binding>
|
||||
<Binding Path="ScreenA[19].DepartureTime">
|
||||
<Binding.Converter>
|
||||
<converters1:DateTimeToStringConverter Format="HH:mm"/>
|
||||
</Binding.Converter>
|
||||
</Binding>
|
||||
</MultiBinding>
|
||||
</TextBlock.Text>
|
||||
</TextBlock>
|
||||
<StackPanel Grid.Column="3" Orientation="Horizontal" Background="White" Margin="4">
|
||||
<TextBlock Margin="2" Width="40" TextAlignment="Center" Background="Black" Foreground="White" Text="{Binding CurrentPageIndex,Converter={StaticResource IntAddOneConverter}}"/>
|
||||
<TextBlock Width="40" TextAlignment="Center" VerticalAlignment="Center" Foreground="Black" Text="{Binding PageCount}"/>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
<TextBlock Margin="0,4" Text="{Binding Text}"/>
|
||||
</StackPanel>
|
||||
</views:BaseScreenView>
|
||||
@@ -0,0 +1,15 @@
|
||||
using CRSim.ScreenSimulator.ViewModels.KunmingChangshuiAirport;
|
||||
|
||||
namespace CRSim.ScreenSimulator.Views.KunmingChangshuiAirport
|
||||
{
|
||||
public partial class PrimaryScreenView : BaseScreenView
|
||||
{
|
||||
public PrimaryScreenViewModel ViewModel { get; }
|
||||
public PrimaryScreenView(PrimaryScreenViewModel viewModel)
|
||||
{
|
||||
InitializeComponent();
|
||||
ViewModel = viewModel;
|
||||
DataContext = viewModel;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user