<UserControl x:Class="PipeGallery.View.HomePageView" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:converter="clr-namespace:PipeGallery.Converter" mc:Ignorable="d" d:DesignHeight="768" d:DesignWidth="1366" Background="#224f86"> <UserControl.Resources> <converter:SignalIntensityImageConverter x:Key="signalIntensityImageConverter"/> <converter:BatteryColorConverter x:Key="batteryColorConverter"/> <converter:DistanceConverter x:Key="distanceConverter"/> <converter:VisibilityConverter x:Key="visibilityConverter"/> <converter:SNRImageConverter x:Key="snrImageConverter"/> <converter:PipeMaterialContentConverter x:Key="pipeMaterialContentConverter"/> <converter:PipeMaterialStateConverter x:Key="pipeMaterialStateConverter"/> </UserControl.Resources> <Grid> <Viewbox> <Grid x:Name="gridHomePage" Width="1366" Height="768"> <Grid Background="White" Margin="10,36,10,10"> <Grid.ColumnDefinitions> <ColumnDefinition Width="111*"/> <ColumnDefinition Width="1235*"/> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="3*"/> <RowDefinition Height="2*"/> </Grid.RowDefinitions> <Button x:Name="btnShutdown" Margin="10,10,0,0" Style="{StaticResource BtnShutdownStyle}" HorizontalAlignment="Left" VerticalAlignment="Top" Width="40" Height="44"/> <Grid Margin="40,0" Grid.ColumnSpan="2"> <Grid Width="1100" Height="400" VerticalAlignment="Bottom"> <Canvas x:Name="canvasCoordinates" Width="{Binding ActualWidth, ElementName=gridContainer}" Height="{Binding ActualHeight, ElementName=gridContainer}"/> </Grid> <Grid x:Name="gridContainer" Width="1100" Height="400" VerticalAlignment="Bottom"> <Grid x:Name="gridRow" Height="350" Background="#f3f3f3" VerticalAlignment="Top"> <Grid.Clip> <PathGeometry> <PathFigure StartPoint="30,0" IsClosed="False"> <LineSegment Point="1070,0"></LineSegment> <ArcSegment Point="1085,15" Size="15,15" SweepDirection="Clockwise"/> <LineSegment Point="1085,335"></LineSegment> <ArcSegment Point="1070,350" Size="15,15" SweepDirection="Clockwise"/> <LineSegment Point="30,350"></LineSegment> <ArcSegment Point="15,335" Size="15,15" SweepDirection="Clockwise"/> <LineSegment Point="15,15"></LineSegment> <ArcSegment Point="30,0" Size="15,15" SweepDirection="Clockwise"/> </PathFigure> </PathGeometry> </Grid.Clip> <Grid x:Name="gridPipelinechart"> <Border Background="#e2b9C4" HorizontalAlignment="Left"> <Border.Width> <MultiBinding Converter="{StaticResource distanceConverter}" ConverterParameter="0"> <MultiBinding.Bindings> <Binding Path="TransmitterADistance" /> <Binding Path="TotalDistance"/> <Binding ElementName="gridContainer" Path="Width"/> </MultiBinding.Bindings> </MultiBinding> </Border.Width> <Line X1="0" X2="0" Y1="0" Y2="350" Stroke="Red" StrokeThickness="1" StrokeDashArray="4, 4" HorizontalAlignment="Right" VerticalAlignment="Stretch" /> </Border> <Border Background="#bcd7e2" HorizontalAlignment="Right"> <Border.Width> <MultiBinding Converter="{StaticResource distanceConverter}" ConverterParameter="0"> <MultiBinding.Bindings> <Binding Path="TransmitterBDistance" /> <Binding Path="TotalDistance"/> <Binding ElementName="gridContainer" Path="Width"/> </MultiBinding.Bindings> </MultiBinding> </Border.Width> <Line X1="0" X2="0" Y1="0" Y2="350" Stroke="Red" StrokeThickness="1" StrokeDashArray="4, 4" HorizontalAlignment="Left" VerticalAlignment="Stretch" /> </Border> <Grid x:Name="gridChartContainer" > </Grid> <Grid x:Name="girdSpeed" HorizontalAlignment="Left"> <Grid.Width> <MultiBinding Converter="{StaticResource distanceConverter}" ConverterParameter="1"> <MultiBinding.Bindings> <Binding Path="SpeedDistance" /> <Binding Path="TotalDistance"/> <Binding ElementName="gridContainer" Path="Width"/> </MultiBinding.Bindings> </MultiBinding> </Grid.Width> <Line X1="-6" X2="-6" Y1="0" Y2="350" Stroke="#f69518" StrokeThickness="1" StrokeDashArray="4, 4" HorizontalAlignment="Right" VerticalAlignment="Stretch" /> <Border Background="#f69518" Width="12" Height="30" VerticalAlignment="Center" HorizontalAlignment="Right"/> </Grid> </Grid> </Grid> <Canvas> <TextBlock Canvas.Bottom="-10" Foreground="#545454" FontSize="24" Text="{Binding SpeedValue}" TextAlignment="Center" Width="150"> <Canvas.Left> <MultiBinding Converter="{StaticResource distanceConverter}" ConverterParameter="2"> <MultiBinding.Bindings> <Binding Path="SpeedDistance" /> <Binding Path="TotalDistance"/> <Binding ElementName="gridContainer" Path="Width"/> </MultiBinding.Bindings> </MultiBinding> </Canvas.Left> </TextBlock> </Canvas> </Grid> <Image Width="38" Height="82" Margin="0,0,0,50" HorizontalAlignment="Left" VerticalAlignment="Bottom" Source="{Binding TransmitterASignalIntensity, ConverterParameter=0, Converter={StaticResource signalIntensityImageConverter}}"/> <Image Width="38" Height="82" Margin="0,0,0,50" HorizontalAlignment="Right" VerticalAlignment="Bottom" Source="{Binding TransmitterBSignalIntensity, ConverterParameter=1, Converter={StaticResource signalIntensityImageConverter}}"/> </Grid> <Grid Grid.Row="1" Grid.ColumnSpan="2"> <Grid Width="1255" Height="248" Margin="0,0,42,25" HorizontalAlignment="Right" VerticalAlignment="Bottom"> <Grid.Background> <ImageBrush ImageSource="/PipeGallery;component/Image/homepage_back.png"/> </Grid.Background> <Grid.ColumnDefinitions> <ColumnDefinition Width="3*"/> <ColumnDefinition Width="*"/> <ColumnDefinition Width="2.5*"/> </Grid.ColumnDefinitions> <Grid Margin="20,20,0,20"> <Grid.ColumnDefinitions> <ColumnDefinition Width="*"/> <ColumnDefinition Width="*"/> <ColumnDefinition Width="*"/> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="*"/> <RowDefinition Height="*"/> </Grid.RowDefinitions> <Grid> <Grid.RowDefinitions> <RowDefinition Height="*"/> <RowDefinition Height="*"/> </Grid.RowDefinitions> <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" > <Image Margin="5,0" Width="19" Height="19" VerticalAlignment="Center" Source="/PipeGallery;component/Image/homepage_icon3.png"/> <TextBlock Text="过滤器" Foreground="#545454" FontSize="20" VerticalAlignment="Center"/> </StackPanel> <TextBlock Text="{Binding FilterValue}" Grid.Row="1" Foreground="#545454" FontSize="28" HorizontalAlignment="Center" VerticalAlignment="Top"/> </Grid> <Grid Grid.Column="1"> <Grid.RowDefinitions> <RowDefinition Height="*"/> <RowDefinition Height="*"/> </Grid.RowDefinitions> <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" > <Image Margin="5,0" Width="19" Height="19" VerticalAlignment="Center" Source="/PipeGallery;component/Image/homepage_icon4.png"/> <TextBlock Text="信噪比" Foreground="#545454" FontSize="20" VerticalAlignment="Center"/> </StackPanel> <StackPanel Grid.Row="1" Orientation="Horizontal" VerticalAlignment="Top" HorizontalAlignment="Center" > <TextBlock Text="{Binding SNR}" Foreground="#545454" FontSize="28" VerticalAlignment="Center"/> <Image Margin="10,0,0,0" Width="19" Height="19" VerticalAlignment="Center" Source="{Binding SNR, Converter={StaticResource snrImageConverter}}"/> </StackPanel> </Grid> <Grid Grid.Column="2"> <Grid.RowDefinitions> <RowDefinition Height="*"/> <RowDefinition Height="*"/> </Grid.RowDefinitions> <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" > <Image Margin="5,0" Width="19" Height="19" VerticalAlignment="Center" Source="/PipeGallery;component/Image/homepage_icon5.png"/> <TextBlock Text="管道" Foreground="#545454" FontSize="20" VerticalAlignment="Center"/> </StackPanel> <TextBlock Text="{Binding PipeLine}" Grid.Row="1" Foreground="#545454" FontSize="14" HorizontalAlignment="Center" VerticalAlignment="Top"/> </Grid> <Grid Grid.Row="1"> <Grid.RowDefinitions> <RowDefinition Height="*"/> <RowDefinition Height="*"/> </Grid.RowDefinitions> <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" > <Image Margin="5,0" Width="19" Height="19" VerticalAlignment="Center" Source="/PipeGallery;component/Image/homepage_icon3.png"/> <TextBlock Text="干扰频段" Foreground="#545454" FontSize="20" VerticalAlignment="Center"/> </StackPanel> <TextBlock Text="{Binding InterfereValue}" Grid.Row="1" Foreground="#545454" FontSize="28" HorizontalAlignment="Center" VerticalAlignment="Top"/> </Grid> <Grid Grid.Row="1" Grid.Column="1"> <Grid.RowDefinitions> <RowDefinition Height="*"/> <RowDefinition Height="*"/> </Grid.RowDefinitions> <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" > <Image Margin="5,0" Width="19" Height="19" VerticalAlignment="Center" Source="/PipeGallery;component/Image/homepage_icon6.png"/> <TextBlock Text="声速" Foreground="#545454" FontSize="20" VerticalAlignment="Center"/> </StackPanel> <TextBlock Text="{Binding SoundSpeed}" Grid.Row="1" Foreground="#545454" FontSize="14" HorizontalAlignment="Center" VerticalAlignment="Top"/> </Grid> <Grid Grid.Row="1" Grid.Column="2"> <Grid.RowDefinitions> <RowDefinition Height="*"/> <RowDefinition Height="*"/> </Grid.RowDefinitions> <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" > <Image Margin="5,0" Width="19" Height="19" VerticalAlignment="Center" Source="/PipeGallery;component/Image/homepage_icon7.png"/> <TextBlock Text="经过了" Foreground="#545454" FontSize="20" VerticalAlignment="Center"/> </StackPanel> <TextBlock Text="{Binding Pass}" Grid.Row="1" Foreground="#545454" FontSize="28" HorizontalAlignment="Center" VerticalAlignment="Top"/> </Grid> <Grid Grid.Row="1" Grid.Column="2"> <Grid.RowDefinitions> <RowDefinition Height="*"/> <RowDefinition Height="*"/> </Grid.RowDefinitions> </Grid> </Grid> <Grid Grid.Column="1" Margin="0,20,40,20"> <Grid.ColumnDefinitions> <ColumnDefinition Width="*"/> <ColumnDefinition Width="*"/> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="*"/> <RowDefinition Height="*"/> </Grid.RowDefinitions> <Image Height="57" Width="50" Source="{Binding TransmitterAFault, ConverterParameter=2, Converter={StaticResource signalIntensityImageConverter}}"/> <TextBlock Text="传感器故障" Foreground="#eb2d2d" HorizontalAlignment="Center" VerticalAlignment="Bottom" Visibility="{Binding TransmitterAFault, ConverterParameter=0, Converter={StaticResource visibilityConverter}}"/> <Image Height="57" Width="50" Source="{Binding TransmitterBFault, ConverterParameter=3, Converter={StaticResource signalIntensityImageConverter}}" Grid.Row="1" /> <TextBlock Text="传感器故障" Foreground="#eb2d2d" HorizontalAlignment="Center" VerticalAlignment="Bottom" Visibility="{Binding TransmitterBFault, ConverterParameter=0, Converter={StaticResource visibilityConverter}}" Grid.Row="1"/> <Grid Grid.Column="1"> <Grid.RowDefinitions> <RowDefinition Height="1.1*"/> <RowDefinition Height="*"/> </Grid.RowDefinitions> <StackPanel Orientation="Horizontal" Margin="0,0,-35,0" > <TextBlock Text="{Binding TransmitterADistance, StringFormat=\{0\}}" Foreground="#545454" FontSize="30" VerticalAlignment="Bottom"/> <TextBlock Text="m" Foreground="#545454" FontSize="18" Width="120" Margin="0,29,0,0"/> </StackPanel> <StackPanel Grid.Row="1" Orientation="Horizontal" VerticalAlignment="Top" Margin="0,10,0,0"> <Border BorderBrush="#545454" BorderThickness="1" Width="35" Height="15"> <ProgressBar Value="{Binding TransmitterABattery}" Foreground="{Binding TransmitterABattery, Converter={StaticResource batteryColorConverter}}" Background="Transparent" /> </Border> <Border BorderBrush="#545454" BorderThickness="1" Width="2" Height="8"/> <TextBlock Text="{Binding TransmitterABattery, StringFormat=\{0\}%}" Foreground="{Binding TransmitterABattery, Converter={StaticResource batteryColorConverter}}" FontSize="14" Margin="3,0,0,0" VerticalAlignment="Bottom"/> </StackPanel> </Grid> <Grid Grid.Row="1" Grid.Column="1"> <Grid.RowDefinitions> <RowDefinition Height="1.1*"/> <RowDefinition Height="*"/> </Grid.RowDefinitions> <StackPanel Orientation="Horizontal" Margin="0,0,-35,0"> <TextBlock Text="{Binding TransmitterBDistance, StringFormat=\{0\}}" Foreground="#545454" FontSize="30" VerticalAlignment="Bottom"/> <TextBlock Text="m" Foreground="#545454" FontSize="18" Width="120" Margin="0,29,0,0"/> </StackPanel> <StackPanel Grid.Row="1" Orientation="Horizontal" VerticalAlignment="Top" Margin="0,10,0,0"> <Border BorderBrush="#545454" BorderThickness="1" Width="35" Height="15"> <ProgressBar Value="{Binding TransmitterBBattery}" Foreground="{Binding TransmitterBBattery, Converter={StaticResource batteryColorConverter}}" Background="Transparent" /> </Border> <Border BorderBrush="#545454" BorderThickness="1" Width="2" Height="8"/> <TextBlock Text="{Binding TransmitterBBattery, StringFormat=\{0\}%}" Foreground="{Binding TransmitterBBattery, Converter={StaticResource batteryColorConverter}}" FontSize="14" Margin="3,0,0,0" VerticalAlignment="Bottom"/> </StackPanel> </Grid> </Grid> <Grid Grid.Column="3" Margin="0,20,20,20"> <Grid.ColumnDefinitions> <ColumnDefinition Width="*"/> <ColumnDefinition Width="*"/> <ColumnDefinition Width="*"/> <ColumnDefinition Width="*"/> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition/> <RowDefinition Height="71"/> <RowDefinition Height="33"/> </Grid.RowDefinitions> <Button x:Name="btnRanging" Content="测距" HorizontalAlignment="Left" Style="{StaticResource BtnHomepageStyle}" IsEnabled="{Binding BtnRangingIsEnabled}" Margin="0,2" Visibility="Collapsed"> <Button.Background> <ImageBrush ImageSource="/PipeGallery;component/Image/b_icon1.png"/> </Button.Background> <Button.Tag> <ImageBrush ImageSource="/PipeGallery;component/Image/b_icon1_unable.png"/> </Button.Tag> </Button> <Button Grid.Column="1" x:Name="btnFilter" Content="干扰采集" HorizontalAlignment="Left" Style="{StaticResource BtnHomepageStyle}" IsEnabled="{Binding BtnFilterIsEnabled}" Margin="0,2"> <Button.Background> <ImageBrush ImageSource="/PipeGallery;component/Image/b_icon1.png"/> </Button.Background> <Button.Tag> <ImageBrush ImageSource="/PipeGallery;component/Image/b_icon1_unable.png"/> </Button.Tag> </Button> <Button Grid.Column="2" x:Name="btnAudition" Content="听音" Style="{StaticResource BtnHomepageStyle}" IsEnabled="{Binding BtnAuditionIsEnabled}" Margin="0,2" Width="80" HorizontalAlignment="Left"> <Button.Background> <ImageBrush ImageSource="/PipeGallery;component/Image/b_icon2.png"/> </Button.Background> <Button.Tag> <ImageBrush ImageSource="/PipeGallery;component/Image/b_icon2_unable.png"/> </Button.Tag> </Button> <Button Grid.Column="3" x:Name="btnSnapshot" Content="快照" Style="{StaticResource BtnHomepageStyle}" IsEnabled="{Binding BtnSnapshotIsEnabled}" Margin="0,2" Width="80" HorizontalAlignment="Left"> <Button.Background> <ImageBrush ImageSource="/PipeGallery;component/Image/b_icon3.png"/> </Button.Background> <Button.Tag> <ImageBrush ImageSource="/PipeGallery;component/Image/b_icon3_unable.png"/> </Button.Tag> </Button> <Button x:Name="btnReset" Grid.Row="1" Grid.Column="0" Content="复位" HorizontalAlignment="Right" Style="{StaticResource BtnHomepageStyle}" IsEnabled="{Binding BtnResetIsEnabled}" Margin="0,2" Grid.RowSpan="2"> <Button.Background> <ImageBrush ImageSource="/PipeGallery;component/Image/b_icon4.png"/> </Button.Background> <Button.Tag> <ImageBrush ImageSource="/PipeGallery;component/Image/b_icon4_unable.png"/> </Button.Tag> </Button> <Button Grid.Row="1" Grid.Column="1" x:Name="btnStart" Tag="{Binding StartState,Converter={StaticResource pipeMaterialStateConverter}}" Content="{Binding StartState,Converter={StaticResource pipeMaterialContentConverter}}" HorizontalAlignment="Right" Style="{StaticResource BtnHomepageStartStyle}" IsEnabled="{Binding BtnStartIsEnabled}" Margin="0,2" Grid.RowSpan="2"> </Button> <Button Grid.Row="1" Grid.Column="2" x:Name="btnSave" Content="保存" HorizontalAlignment="Right" Style="{StaticResource BtnHomepageStyle}" IsEnabled="{Binding BtnSaveIsEnabled}" Margin="0,2" Grid.RowSpan="2"> <Button.Background> <ImageBrush ImageSource="/PipeGallery;component/Image/b_icon6.png"/> </Button.Background> <Button.Tag> <ImageBrush ImageSource="/PipeGallery;component/Image/b_icon6_unable.png"/> </Button.Tag> </Button> </Grid> </Grid> <Button x:Name="btnMenu" Style="{StaticResource BtnListStyle}" Width="72" Height="72" HorizontalAlignment="Right" VerticalAlignment="Bottom"/> </Grid> </Grid> </Grid> </Viewbox> </Grid> </UserControl>