| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190 | <UserControl x:Class="Venus_Themes.UserControls.DEVceA"             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:local="clr-namespace:Venus_Themes.UserControls"             xmlns:converters="clr-namespace:Venus_Themes.Converters"             mc:Ignorable="d"              d:DesignHeight="450" d:DesignWidth="800" Name="devceChamber">    <UserControl.Resources>        <Style TargetType="Rectangle" x:Key="doorAnimation">            <Setter Property="Width" Value="200"/>            <Style.Triggers>                <DataTrigger Binding="{Binding ElementName=tmChamber,Path=DoorIsOpen}" Value="True">                    <DataTrigger.EnterActions>                        <BeginStoryboard>                            <Storyboard>                                <DoubleAnimation  Storyboard.TargetProperty="Width" To="40" Duration="0:0:1"/>                            </Storyboard>                        </BeginStoryboard>                    </DataTrigger.EnterActions>                    <DataTrigger.ExitActions>                        <BeginStoryboard>                            <Storyboard>                                <DoubleAnimation  Storyboard.TargetProperty="Width" To="102" Duration="0:0:1"/>                            </Storyboard>                        </BeginStoryboard>                    </DataTrigger.ExitActions>                </DataTrigger>            </Style.Triggers>        </Style>        <Style TargetType="Image" x:Key="CassetteMove">            <Setter Property="Margin" Value="0,200,0,0"/>            <Setter Property="Visibility" Value="Visible"></Setter>            <Setter Property="RenderTransform">                <Setter.Value>                    <TransformGroup>                        <RotateTransform Angle="0"/>                    </TransformGroup>                </Setter.Value>            </Setter>            <Style.Triggers>                <DataTrigger Binding="{Binding ElementName=devceChamber,Path=CassetteArrive}" Value="True">                    <DataTrigger.EnterActions>                        <BeginStoryboard>                            <Storyboard>                                <ThicknessAnimationUsingKeyFrames Storyboard.TargetProperty="(FrameworkElement.Margin)" >                                    <EasingThicknessKeyFrame KeyTime="0" Value="0,200,0,0"/>                                    <EasingThicknessKeyFrame KeyTime="0:0:2" Value="0,0,0,0"/>                                </ThicknessAnimationUsingKeyFrames>                                <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(FrameworkElement.Visibility)">                                    <DiscreteObjectKeyFrame KeyTime="0:0:0" Value="{x:Static Visibility.Visible}"/>                                </ObjectAnimationUsingKeyFrames>                                <DoubleAnimation Storyboard.TargetProperty=                                                 "RenderTransform.Children[0].Angle" Duration="0:0:1" BeginTime="0:0:2"  From="0" To="30" />                            </Storyboard>                        </BeginStoryboard>                    </DataTrigger.EnterActions>                    <DataTrigger.ExitActions>                        <BeginStoryboard>                            <Storyboard>                                <ThicknessAnimationUsingKeyFrames Storyboard.TargetProperty="(FrameworkElement.Margin)" >                                    <EasingThicknessKeyFrame KeyTime="0:0:1" Value="0,0,0,0"/>                                    <EasingThicknessKeyFrame KeyTime="0:0:3" Value="0,200,0,0"/>                                </ThicknessAnimationUsingKeyFrames>                                <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(FrameworkElement.Visibility)">                                    <DiscreteObjectKeyFrame KeyTime="0:0:3" Value="{x:Static Visibility.Hidden}"/>                                </ObjectAnimationUsingKeyFrames>                                <DoubleAnimation Storyboard.TargetProperty=                                                 "RenderTransform.Children[0].Angle" Duration="0:0:1" BeginTime="0:0:0"  From="30" To="0" />                            </Storyboard>                        </BeginStoryboard>                    </DataTrigger.ExitActions>                </DataTrigger>            </Style.Triggers>        </Style>                <converters:BoolToBool x:Key="BoolToBool"/>        <Storyboard x:Key="WaterStoryboard">            <PointAnimation Storyboard.TargetName="bs_Water" Storyboard.TargetProperty="Point1" From="15,-10" To="15,10" Duration="00:00:1" AutoReverse="True" RepeatBehavior="Forever"></PointAnimation>            <PointAnimation Storyboard.TargetName="bs_Water" Storyboard.TargetProperty="Point2" From="35,10" To="35,-10" Duration="00:00:2.5" AutoReverse="True" RepeatBehavior="Forever"></PointAnimation>        </Storyboard>        <Storyboard x:Key="WaterWidth">            <DoubleAnimation Storyboard.TargetName="rec_Water" Storyboard.TargetProperty="Height" Duration="0:0:0.3">            </DoubleAnimation>        </Storyboard>    </UserControl.Resources>    <UserControl.Triggers>        <EventTrigger RoutedEvent="Loaded">            <BeginStoryboard Storyboard="{StaticResource WaterStoryboard}"></BeginStoryboard>            <BeginStoryboard Storyboard="{StaticResource WaterWidth}"></BeginStoryboard>        </EventTrigger>    </UserControl.Triggers>    <Viewbox>        <Canvas Height="120" Width="200">            <!--<Image Width="160" Style="{StaticResource CassetteMove}"  Canvas.Left="10" Canvas.Top="-64" Source="pack://application:,,,/Venus_Themes;component/Resources/cassette.png"  Opacity="0.8"  Visibility="{Binding ElementName=devceChamber,Path=CassetteArrive,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged,Converter={StaticResource bool2VisibilityConverter}}" RenderTransformOrigin="0.5,0.5" Panel.ZIndex="2" HorizontalAlignment="Center" VerticalAlignment="Top">-->            <!--<Image Width="160" Style="{StaticResource CassetteMove}"  Canvas.Left="10" Canvas.Top="-64" Source="pack://application:,,,/Venus_Themes;component/Resources/cassette.png"  Opacity="0.8"  RenderTransformOrigin="0.5,0.5" Panel.ZIndex="2" HorizontalAlignment="Center" VerticalAlignment="Top">-->            <!--</Image>-->            <Image Width="200" Canvas.Left="0" Canvas.Top="-93" Source="pack://application:,,,/Venus_Themes;component/Themes/Images/parts/venusde/VCEleft2.png"></Image>            <!--<Rectangle Cursor="Hand" DataContext="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=UserControl,AncestorLevel=1}}" Style="{StaticResource doorAnimation}"  Fill="DimGray"   VerticalAlignment="Top"    Height="15"    Canvas.Top="-20" Canvas.Left="-4" Name="door2">                <Rectangle.RenderTransform >                    <RotateTransform CenterX="102" CenterY="10" Angle="180"/>                </Rectangle.RenderTransform>                <Rectangle.ContextMenu >                    <ContextMenu>                        <MenuItem Header="Open Door"  Click="OpenDoor_Click"    IsChecked="{Binding DoorIsOpen}" IsEnabled="{Binding DoorIsOpen,Converter={StaticResource BoolToBool}}"/>                        <MenuItem Header="Close Door" Click="CloseDoor_Click"    IsChecked="{Binding DoorIsOpen,Converter={StaticResource BoolToBool}}" IsEnabled="{Binding DoorIsOpen}"/>                    </ContextMenu>                </Rectangle.ContextMenu>            </Rectangle>-->            <Canvas Canvas.Top="20">                <Border Canvas.Bottom="-120" Canvas.Left="10" HorizontalAlignment="Center" Width="180">                    <Rectangle Fill="#fac090"  Width="180" Height="10">                        <Rectangle.Style>                            <Style TargetType="Rectangle">                                <Style.Triggers>                                    <DataTrigger Binding="{Binding ElementName=devceChamber,Path=VCEOutDoorIsOpen}" Value="True">                                        <DataTrigger.EnterActions>                                            <BeginStoryboard>                                                <Storyboard>                                                    <DoubleAnimation  Storyboard.TargetProperty="Width" To="0" Duration="0:0:1"/>                                                </Storyboard>                                            </BeginStoryboard>                                        </DataTrigger.EnterActions>                                        <DataTrigger.ExitActions>                                            <BeginStoryboard>                                                <Storyboard>                                                    <DoubleAnimation  Storyboard.TargetProperty="Width" To="180" Duration="0:0:1"/>                                                </Storyboard>                                            </BeginStoryboard>                                        </DataTrigger.ExitActions>                                    </DataTrigger>                                </Style.Triggers>                            </Style>                        </Rectangle.Style>                    </Rectangle>                </Border>                <Border Canvas.Top="129" Canvas.Left="-5" Height="44" Width="270" Background="Transparent" BorderBrush="Gainsboro" BorderThickness="0,0,3,3" CornerRadius="3" Visibility="Collapsed">                    <Border.RenderTransform>                        <ScaleTransform ScaleX="0.77" ScaleY="0.58"></ScaleTransform>                    </Border.RenderTransform>                    <Border Background="Transparent" CornerRadius="1" BorderBrush="Black" BorderThickness="3,3,0,0">                        <StackPanel Margin="-160,0,0,0" Height="44">                            <StackPanel   Width="49" Margin="-40 0 45 10">                                <StackPanel.RenderTransform>                                    <RotateTransform Angle="-90" CenterX="19.5" CenterY="10"></RotateTransform>                                </StackPanel.RenderTransform>                                <!--矩形-->                                <Rectangle x:Name="rec_Water"  Fill="#42a5f5" Height="{Binding ElementName=devceChamber,Path=PercentValue,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" Width="50" Margin="-20,6,0,0"/>                                <!--水波-->                                <Path Fill="#42a5f5" Margin="0,-16,0,0" Height="10" Stretch="Fill">                                    <Path.RenderTransform>                                        <RotateTransform Angle="180" CenterX="19.5" CenterY="10"></RotateTransform>                                    </Path.RenderTransform>                                    <Path.Data>                                        <PathGeometry>                                            <PathFigure StartPoint="0,0">                                                <BezierSegment x:Name="bs_Water" Point1="15,-5" Point2="35,5"  Point3="50,0"></BezierSegment>                                                <PolyLineSegment Points="50,10 0,10"></PolyLineSegment>                                            </PathFigure>                                        </PathGeometry>                                    </Path.Data>                                </Path>                            </StackPanel>                        </StackPanel>                    </Border>                </Border>                <StackPanel Width="200" Canvas.Top="130" HorizontalAlignment="Center" VerticalAlignment="Center">                    <TextBlock Canvas.Top="130" Canvas.Left="90" TextAlignment="Center" FontSize="20" FontWeight="Normal">                        <TextBlock.Text>                            <MultiBinding  StringFormat=" {0}">                                <Binding  ElementName="devceChamber" Path="VCEName"></Binding>                                <Binding  ElementName="devceChamber" Path="PressureValue"></Binding>                            </MultiBinding>                        </TextBlock.Text>                    </TextBlock>                    <!--<TextBlock Canvas.Top="130" Canvas.Left="90" TextAlignment="Center" FontSize="20" FontWeight="Normal" Text="{Binding ElementName=devceChamber,Path=PressureValue,StringFormat=F0}" />-->                </StackPanel>            </Canvas>        </Canvas>    </Viewbox></UserControl>
 |