|
|
@@ -9,236 +9,487 @@
|
|
|
<vm:ViewAViewModel/>
|
|
|
</UserControl.DataContext>
|
|
|
|
|
|
- <Border Background="#0D1117" Width="1280" Height="800">
|
|
|
- <Grid RowDefinitions="Auto,*,Auto" Margin="15">
|
|
|
-
|
|
|
- <!-- 顶部工具栏 -->
|
|
|
- <Border Grid.Row="0" Background="#161B22" CornerRadius="8" Padding="12" Margin="0,0,0,10">
|
|
|
- <Grid ColumnDefinitions="Auto,*,Auto,Auto">
|
|
|
- <!-- 左侧标题 -->
|
|
|
- <StackPanel Grid.Column="0" Orientation="Horizontal" Spacing="10">
|
|
|
- <TextBlock Text="🏭" FontSize="20" VerticalAlignment="Center"/>
|
|
|
- <StackPanel>
|
|
|
- <TextBlock Text="污水处理监控系统" FontWeight="Bold" FontSize="16" Foreground="White"/>
|
|
|
- <TextBlock Text="实时工艺流程" FontSize="11" Foreground="#8B949E"/>
|
|
|
- </StackPanel>
|
|
|
+ <!-- 工业深色背景 -->
|
|
|
+ <Border Background="#0A0E14" Width="1280" Height="800">
|
|
|
+ <Grid RowDefinitions="48,*,32" Margin="0">
|
|
|
+
|
|
|
+ <!-- ═══ 顶部标题栏 ═══ -->
|
|
|
+ <Border Grid.Row="0" Background="#111820" BorderBrush="#1C2333" BorderThickness="0,0,0,1">
|
|
|
+ <Grid ColumnDefinitions="Auto,*,Auto,Auto,Auto" Margin="16,0">
|
|
|
+ <!-- 系统标题 -->
|
|
|
+ <StackPanel Grid.Column="0" Orientation="Horizontal" Spacing="12" VerticalAlignment="Center">
|
|
|
+ <Border Background="#00897B" Width="4" Height="24" CornerRadius="2"/>
|
|
|
+ <TextBlock Text="YZ WATER" FontSize="16" FontWeight="Bold"
|
|
|
+ Foreground="#E0E0E0" FontFamily="Consolas, monospace"
|
|
|
+ VerticalAlignment="Center"/>
|
|
|
+ <TextBlock Text="污水处理监控系统" FontSize="13"
|
|
|
+ Foreground="#6B7280" VerticalAlignment="Center"/>
|
|
|
</StackPanel>
|
|
|
|
|
|
- <!-- 中间连接状态 -->
|
|
|
- <StackPanel Grid.Column="2" Orientation="Horizontal" Spacing="15" Margin="20,0">
|
|
|
- <Border Background="#238636" CornerRadius="12" Padding="10,5">
|
|
|
- <StackPanel Orientation="Horizontal" Spacing="5">
|
|
|
- <Ellipse Width="8" Height="8" Fill="White"/>
|
|
|
- <TextBlock Text="PLC 已连接" Foreground="White" FontSize="11"/>
|
|
|
- </StackPanel>
|
|
|
- </Border>
|
|
|
- <Button Content="连接" Command="{Binding ConnectPlcCommand}" Padding="12,4"/>
|
|
|
- <Button Content="断开" Command="{Binding DisconnectPlcCommand}" Padding="12,4"/>
|
|
|
- <Button Content="刷新" Command="{Binding RefreshDataCommand}" Padding="12,4"/>
|
|
|
+ <!-- PLC 连接状态 LED -->
|
|
|
+ <StackPanel Grid.Column="2" Orientation="Horizontal" Spacing="8" VerticalAlignment="Center" Margin="24,0">
|
|
|
+ <Border Width="10" Height="10" CornerRadius="5" Background="#00897B"/>
|
|
|
+ <TextBlock Text="PLC" FontFamily="Consolas, monospace" FontSize="11"
|
|
|
+ Foreground="#9CA3AF" VerticalAlignment="Center"/>
|
|
|
+ <TextBlock Text="CONNECTED" FontFamily="Consolas, monospace" FontSize="11"
|
|
|
+ Foreground="#00897B" VerticalAlignment="Center"/>
|
|
|
+ </StackPanel>
|
|
|
+
|
|
|
+ <!-- 操作按钮 -->
|
|
|
+ <StackPanel Grid.Column="3" Orientation="Horizontal" Spacing="4" VerticalAlignment="Center" Margin="16,0">
|
|
|
+ <Button Content="CONNECT" Command="{Binding ConnectPlcCommand}"
|
|
|
+ FontFamily="Consolas, monospace" FontSize="10" Padding="10,4"
|
|
|
+ Background="#1C2333" Foreground="#00897B" BorderBrush="#00897B"/>
|
|
|
+ <Button Content="DISCONNECT" Command="{Binding DisconnectPlcCommand}"
|
|
|
+ FontFamily="Consolas, monospace" FontSize="10" Padding="10,4"
|
|
|
+ Background="#1C2333" Foreground="#EF4444" BorderBrush="#EF4444"/>
|
|
|
+ <Button Content="REFRESH" Command="{Binding RefreshDataCommand}"
|
|
|
+ FontFamily="Consolas, monospace" FontSize="10" Padding="10,4"
|
|
|
+ Background="#1C2333" Foreground="#3B82F6" BorderBrush="#3B82F6"/>
|
|
|
</StackPanel>
|
|
|
|
|
|
- <!-- 右侧时间 -->
|
|
|
- <StackPanel Grid.Column="3" VerticalAlignment="Center">
|
|
|
+ <!-- 时钟 -->
|
|
|
+ <StackPanel Grid.Column="4" VerticalAlignment="Center" HorizontalAlignment="Right">
|
|
|
<TextBlock Text="{Binding CurrentTime, StringFormat='{}{0:HH:mm:ss}'}"
|
|
|
- FontSize="18" FontWeight="Bold" Foreground="#58A6FF"/>
|
|
|
+ FontFamily="Consolas, monospace" FontSize="18" FontWeight="Bold"
|
|
|
+ Foreground="#00897B"/>
|
|
|
<TextBlock Text="{Binding CurrentTime, StringFormat='{}{0:yyyy-MM-dd}'}"
|
|
|
- FontSize="11" Foreground="#8B949E" HorizontalAlignment="Right"/>
|
|
|
+ FontFamily="Consolas, monospace" FontSize="10"
|
|
|
+ Foreground="#4B5563" HorizontalAlignment="Right"/>
|
|
|
</StackPanel>
|
|
|
</Grid>
|
|
|
</Border>
|
|
|
|
|
|
- <!-- 中间主内容区 -->
|
|
|
- <Grid Grid.Row="1" ColumnDefinitions="*,280">
|
|
|
-
|
|
|
- <!-- 左侧工艺流程图 -->
|
|
|
- <Border Grid.Column="0" Background="#161B22" CornerRadius="8" Padding="10" Margin="0,0,10,0">
|
|
|
- <Canvas Width="900" Height="550">
|
|
|
-
|
|
|
- <!-- 水箱组 -->
|
|
|
- <StackPanel Orientation="Horizontal" Canvas.Left="20" Canvas.Top="20" Spacing="30">
|
|
|
- <!-- 入口池 -->
|
|
|
- <StackPanel>
|
|
|
- <controls:WaterTankControl Width="120" Height="160"
|
|
|
- WaterLevel="{Binding Tank1Level}" Text="入口池"
|
|
|
- WaterColor="#00BCD4"/>
|
|
|
- <TextBlock Text="{Binding Tank1Level, StringFormat='液位: {0:F1}%'}"
|
|
|
- Foreground="#8B949E" FontSize="11" HorizontalAlignment="Center" Margin="0,5,0,0"/>
|
|
|
- </StackPanel>
|
|
|
-
|
|
|
- <!-- 池1 -->
|
|
|
- <StackPanel>
|
|
|
- <controls:WaterTankControl Width="120" Height="160"
|
|
|
- WaterLevel="{Binding Tank2Level}" Text="生化池"
|
|
|
- WaterColor="#26A69A"/>
|
|
|
- <TextBlock Text="{Binding Tank2Level, StringFormat='液位: {0:F1}%'}"
|
|
|
- Foreground="#8B949E" FontSize="11" HorizontalAlignment="Center" Margin="0,5,0,0"/>
|
|
|
- </StackPanel>
|
|
|
+ <!-- ═══ 中间主内容区 ═══ -->
|
|
|
+ <Grid Grid.Row="1" ColumnDefinitions="*,260" Margin="8,4">
|
|
|
|
|
|
- <!-- 池2 -->
|
|
|
- <StackPanel>
|
|
|
- <controls:WaterTankControl Width="120" Height="160"
|
|
|
- WaterLevel="{Binding Tank3Level}" Text="沉淀池"
|
|
|
- WaterColor="#42A5F5"/>
|
|
|
- <TextBlock Text="{Binding Tank3Level, StringFormat='液位: {0:F1}%'}"
|
|
|
- Foreground="#8B949E" FontSize="11" HorizontalAlignment="Center" Margin="0,5,0,0"/>
|
|
|
- </StackPanel>
|
|
|
+ <!-- 左侧:工艺流程图 -->
|
|
|
+ <Border Grid.Column="0" Background="#111820" CornerRadius="2" Margin="0,0,4,0"
|
|
|
+ BorderBrush="#1C2333" BorderThickness="1">
|
|
|
+ <Grid RowDefinitions="Auto,*,Auto" Margin="12,8">
|
|
|
|
|
|
- <!-- 出口池 -->
|
|
|
- <StackPanel>
|
|
|
- <controls:WaterTankControl Width="120" Height="160"
|
|
|
- WaterLevel="{Binding Tank4Level}" Text="出口池"
|
|
|
- WaterColor="#66BB6A"/>
|
|
|
- <TextBlock Text="{Binding Tank4Level, StringFormat='液位: {0:F1}%'}"
|
|
|
- Foreground="#8B949E" FontSize="11" HorizontalAlignment="Center" Margin="0,5,0,0"/>
|
|
|
- </StackPanel>
|
|
|
+ <!-- 流程图标题 -->
|
|
|
+ <StackPanel Grid.Row="0" Orientation="Horizontal" Spacing="8" Margin="0,0,0,8">
|
|
|
+ <Border Background="#00897B" Width="3" Height="16" CornerRadius="1"/>
|
|
|
+ <TextBlock Text="PROCESS FLOW" FontFamily="Consolas, monospace"
|
|
|
+ FontSize="12" FontWeight="Bold" Foreground="#9CA3AF"/>
|
|
|
</StackPanel>
|
|
|
|
|
|
- <!-- 管道连接 -->
|
|
|
- <controls:PipeLineControl Canvas.Left="20" Canvas.Top="200" Width="540" Height="25"
|
|
|
- IsFlow="{Binding IsInflowRunning}" IsHorizontal="True"/>
|
|
|
+ <!-- 工艺流程 Canvas -->
|
|
|
+ <Border Grid.Row="1" Background="#0D1117" CornerRadius="2" Padding="8">
|
|
|
+ <Canvas Width="900" Height="480">
|
|
|
|
|
|
- <!-- 阀门组 -->
|
|
|
- <StackPanel Orientation="Horizontal" Canvas.Left="50" Canvas.Top="240" Spacing="80">
|
|
|
- <controls:ValveControl Width="40" Height="50" Status="{Binding Valve1Status}" Text="进水"/>
|
|
|
- <controls:ValveControl Width="40" Height="50" Status="{Binding Valve2Status}" Text="曝气"/>
|
|
|
- <controls:ValveControl Width="40" Height="50" Status="{Binding Valve3Status}" Text="回流"/>
|
|
|
- <controls:ValveControl Width="40" Height="50" Status="{Binding Valve4Status}" Text="出水"/>
|
|
|
- </StackPanel>
|
|
|
+ <!-- ─── 水箱组 ─── -->
|
|
|
+ <!-- 入口池 -->
|
|
|
+ <StackPanel Orientation="Vertical" Canvas.Left="30" Canvas.Top="20">
|
|
|
+ <controls:WaterTankControl Width="110" Height="140"
|
|
|
+ WaterLevel="{Binding Tank1Level}" Text="入口池"
|
|
|
+ WaterColor="#00897B" BorderColor="#1C2333"/>
|
|
|
+ <Border Background="#1C2333" Padding="6,3" Margin="0,4,0,0">
|
|
|
+ <TextBlock Text="{Binding Tank1Level, StringFormat='LV: {0:F1}%'}"
|
|
|
+ FontFamily="Consolas, monospace" FontSize="11"
|
|
|
+ Foreground="#00897B" HorizontalAlignment="Center"/>
|
|
|
+ </Border>
|
|
|
+ </StackPanel>
|
|
|
|
|
|
- <!-- 泵组 -->
|
|
|
- <StackPanel Orientation="Horizontal" Canvas.Left="30" Canvas.Top="310" Spacing="25">
|
|
|
- <controls:PumpControl Width="70" Height="80"
|
|
|
- IsRunning="{Binding Pump1Running}" Frequency="50" Text="进水泵1"/>
|
|
|
- <controls:PumpControl Width="70" Height="80"
|
|
|
- IsRunning="{Binding Pump2Running}" Frequency="45" Text="进水泵2"/>
|
|
|
- <controls:PumpControl Width="70" Height="80"
|
|
|
- IsRunning="{Binding Pump3Running}" Frequency="40" Text="回流泵"/>
|
|
|
- <controls:PumpControl Width="70" Height="80"
|
|
|
- IsRunning="{Binding Pump4Running}" Frequency="35" Text="排泥泵"/>
|
|
|
- <controls:PumpControl Width="70" Height="80"
|
|
|
- IsRunning="{Binding Pump5Running}" Frequency="55" Text="加药泵"/>
|
|
|
- </StackPanel>
|
|
|
+ <!-- 生化池 -->
|
|
|
+ <StackPanel Orientation="Vertical" Canvas.Left="180" Canvas.Top="20">
|
|
|
+ <controls:WaterTankControl Width="110" Height="140"
|
|
|
+ WaterLevel="{Binding Tank2Level}" Text="生化池"
|
|
|
+ WaterColor="#0288D1" BorderColor="#1C2333"/>
|
|
|
+ <Border Background="#1C2333" Padding="6,3" Margin="0,4,0,0">
|
|
|
+ <TextBlock Text="{Binding Tank2Level, StringFormat='LV: {0:F1}%'}"
|
|
|
+ FontFamily="Consolas, monospace" FontSize="11"
|
|
|
+ Foreground="#0288D1" HorizontalAlignment="Center"/>
|
|
|
+ </Border>
|
|
|
+ </StackPanel>
|
|
|
|
|
|
- <!-- 风机组 -->
|
|
|
- <StackPanel Orientation="Horizontal" Canvas.Left="120" Canvas.Top="410" Spacing="50">
|
|
|
- <controls:FanControl Width="50" Height="50" IsRunning="{Binding Fan1Running}" Speed="1" Text="风机1"/>
|
|
|
- <controls:FanControl Width="50" Height="50" IsRunning="{Binding Fan2Running}" Speed="1.5" Text="风机2"/>
|
|
|
- </StackPanel>
|
|
|
+ <!-- 沉淀池 -->
|
|
|
+ <StackPanel Orientation="Vertical" Canvas.Left="330" Canvas.Top="20">
|
|
|
+ <controls:WaterTankControl Width="110" Height="140"
|
|
|
+ WaterLevel="{Binding Tank3Level}" Text="沉淀池"
|
|
|
+ WaterColor="#7B1FA2" BorderColor="#1C2333"/>
|
|
|
+ <Border Background="#1C2333" Padding="6,3" Margin="0,4,0,0">
|
|
|
+ <TextBlock Text="{Binding Tank3Level, StringFormat='LV: {0:F1}%'}"
|
|
|
+ FontFamily="Consolas, monospace" FontSize="11"
|
|
|
+ Foreground="#7B1FA2" HorizontalAlignment="Center"/>
|
|
|
+ </Border>
|
|
|
+ </StackPanel>
|
|
|
|
|
|
- <!-- 模式切换 -->
|
|
|
- <Border Canvas.Left="750" Canvas.Top="20" Width="120" Height="50"
|
|
|
- Background="#21262D" CornerRadius="8">
|
|
|
- <StackPanel HorizontalAlignment="Center" VerticalAlignment="Center">
|
|
|
- <TextBlock Text="运行模式" FontSize="10" Foreground="#8B949E" HorizontalAlignment="Center"/>
|
|
|
- <controls:ValveControl Width="30" Height="30"
|
|
|
- Status="{Binding ModeStatus}" Text=""/>
|
|
|
- </StackPanel>
|
|
|
+ <!-- 出口池 -->
|
|
|
+ <StackPanel Orientation="Vertical" Canvas.Left="480" Canvas.Top="20">
|
|
|
+ <controls:WaterTankControl Width="110" Height="140"
|
|
|
+ WaterLevel="{Binding Tank4Level}" Text="出口池"
|
|
|
+ WaterColor="#2E7D32" BorderColor="#1C2333"/>
|
|
|
+ <Border Background="#1C2333" Padding="6,3" Margin="0,4,0,0">
|
|
|
+ <TextBlock Text="{Binding Tank4Level, StringFormat='LV: {0:F1}%'}"
|
|
|
+ FontFamily="Consolas, monospace" FontSize="11"
|
|
|
+ Foreground="#2E7D32" HorizontalAlignment="Center"/>
|
|
|
+ </Border>
|
|
|
+ </StackPanel>
|
|
|
+
|
|
|
+ <!-- ─── 管道 ─── -->
|
|
|
+ <controls:PipeLineControl Canvas.Left="30" Canvas.Top="180" Width="560" Height="20"
|
|
|
+ IsFlow="{Binding IsInflowRunning}" IsHorizontal="True"
|
|
|
+ PipeColor="#1C2333" WaterColor="#00897B"/>
|
|
|
+
|
|
|
+ <!-- ─── 阀门组 ─── -->
|
|
|
+ <controls:ValveControl Canvas.Left="60" Canvas.Top="215" Width="36" Height="44"
|
|
|
+ Status="{Binding Valve1Status}" Text="V1"
|
|
|
+ ValveColor="#F59E0B" BackgroundColor="#1C2333"/>
|
|
|
+ <controls:ValveControl Canvas.Left="190" Canvas.Top="215" Width="36" Height="44"
|
|
|
+ Status="{Binding Valve2Status}" Text="V2"
|
|
|
+ ValveColor="#F59E0B" BackgroundColor="#1C2333"/>
|
|
|
+ <controls:ValveControl Canvas.Left="320" Canvas.Top="215" Width="36" Height="44"
|
|
|
+ Status="{Binding Valve3Status}" Text="V3"
|
|
|
+ ValveColor="#F59E0B" BackgroundColor="#1C2333"/>
|
|
|
+ <controls:ValveControl Canvas.Left="450" Canvas.Top="215" Width="36" Height="44"
|
|
|
+ Status="{Binding Valve4Status}" Text="V4"
|
|
|
+ ValveColor="#F59E0B" BackgroundColor="#1C2333"/>
|
|
|
+
|
|
|
+ <!-- ─── 泵组 ─── -->
|
|
|
+ <StackPanel Orientation="Horizontal" Canvas.Left="30" Canvas.Top="280" Spacing="20">
|
|
|
+ <StackPanel>
|
|
|
+ <controls:PumpControl Width="64" Height="72"
|
|
|
+ IsRunning="{Binding Pump1Running}" Frequency="50" Text="P1"/>
|
|
|
+ <TextBlock Text="进水泵1" FontFamily="Consolas, monospace" FontSize="9"
|
|
|
+ Foreground="#6B7280" HorizontalAlignment="Center" Margin="0,2,0,0"/>
|
|
|
+ </StackPanel>
|
|
|
+ <StackPanel>
|
|
|
+ <controls:PumpControl Width="64" Height="72"
|
|
|
+ IsRunning="{Binding Pump2Running}" Frequency="45" Text="P2"/>
|
|
|
+ <TextBlock Text="进水泵2" FontFamily="Consolas, monospace" FontSize="9"
|
|
|
+ Foreground="#6B7280" HorizontalAlignment="Center" Margin="0,2,0,0"/>
|
|
|
+ </StackPanel>
|
|
|
+ <StackPanel>
|
|
|
+ <controls:PumpControl Width="64" Height="72"
|
|
|
+ IsRunning="{Binding Pump3Running}" Frequency="40" Text="P3"/>
|
|
|
+ <TextBlock Text="回流泵" FontFamily="Consolas, monospace" FontSize="9"
|
|
|
+ Foreground="#6B7280" HorizontalAlignment="Center" Margin="0,2,0,0"/>
|
|
|
+ </StackPanel>
|
|
|
+ <StackPanel>
|
|
|
+ <controls:PumpControl Width="64" Height="72"
|
|
|
+ IsRunning="{Binding Pump4Running}" Frequency="35" Text="P4"/>
|
|
|
+ <TextBlock Text="排泥泵" FontFamily="Consolas, monospace" FontSize="9"
|
|
|
+ Foreground="#6B7280" HorizontalAlignment="Center" Margin="0,2,0,0"/>
|
|
|
+ </StackPanel>
|
|
|
+ <StackPanel>
|
|
|
+ <controls:PumpControl Width="64" Height="72"
|
|
|
+ IsRunning="{Binding Pump5Running}" Frequency="55" Text="P5"/>
|
|
|
+ <TextBlock Text="加药泵" FontFamily="Consolas, monospace" FontSize="9"
|
|
|
+ Foreground="#6B7280" HorizontalAlignment="Center" Margin="0,2,0,0"/>
|
|
|
+ </StackPanel>
|
|
|
+ </StackPanel>
|
|
|
+
|
|
|
+ <!-- ─── 风机组 ─── -->
|
|
|
+ <StackPanel Orientation="Horizontal" Canvas.Left="120" Canvas.Top="375" Spacing="40">
|
|
|
+ <StackPanel>
|
|
|
+ <controls:FanControl Width="44" Height="44"
|
|
|
+ IsRunning="{Binding Fan1Running}" Speed="1" Text="F1"/>
|
|
|
+ <TextBlock Text="风机1" FontFamily="Consolas, monospace" FontSize="9"
|
|
|
+ Foreground="#6B7280" HorizontalAlignment="Center" Margin="0,2,0,0"/>
|
|
|
+ </StackPanel>
|
|
|
+ <StackPanel>
|
|
|
+ <controls:FanControl Width="44" Height="44"
|
|
|
+ IsRunning="{Binding Fan2Running}" Speed="1.5" Text="F2"/>
|
|
|
+ <TextBlock Text="风机2" FontFamily="Consolas, monospace" FontSize="9"
|
|
|
+ Foreground="#6B7280" HorizontalAlignment="Center" Margin="0,2,0,0"/>
|
|
|
+ </StackPanel>
|
|
|
+ </StackPanel>
|
|
|
+
|
|
|
+ <!-- ─── 流向箭头 ─── -->
|
|
|
+ <TextBlock Text="→" Canvas.Left="145" Canvas.Top="75" FontSize="20" Foreground="#00897B"/>
|
|
|
+ <TextBlock Text="→" Canvas.Left="295" Canvas.Top="75" FontSize="20" Foreground="#00897B"/>
|
|
|
+ <TextBlock Text="→" Canvas.Left="445" Canvas.Top="75" FontSize="20" Foreground="#00897B"/>
|
|
|
+ <TextBlock Text="→" Canvas.Left="595" Canvas.Top="75" FontSize="20" Foreground="#00897B"/>
|
|
|
+
|
|
|
+ <!-- ─── 模式切换 ─── -->
|
|
|
+ <Border Canvas.Left="700" Canvas.Top="20" Width="160" Height="80"
|
|
|
+ Background="#111820" BorderBrush="#1C2333" BorderThickness="1" CornerRadius="2">
|
|
|
+ <StackPanel HorizontalAlignment="Center" VerticalAlignment="Center" Spacing="6">
|
|
|
+ <TextBlock Text="MODE" FontFamily="Consolas, monospace"
|
|
|
+ FontSize="10" Foreground="#6B7280" HorizontalAlignment="Center"/>
|
|
|
+ <controls:ValveControl Width="40" Height="40"
|
|
|
+ Status="{Binding ModeStatus}" Text="AUTO"
|
|
|
+ ValveColor="#00897B" BackgroundColor="#1C2333"/>
|
|
|
+ </StackPanel>
|
|
|
+ </Border>
|
|
|
+
|
|
|
+ <!-- ─── 实时数据面板 ─── -->
|
|
|
+ <Border Canvas.Left="700" Canvas.Top="110" Width="160" Height="180"
|
|
|
+ Background="#111820" BorderBrush="#1C2333" BorderThickness="1" CornerRadius="2">
|
|
|
+ <StackPanel Margin="10,8" Spacing="8">
|
|
|
+ <TextBlock Text="REALTIME" FontFamily="Consolas, monospace"
|
|
|
+ FontSize="10" Foreground="#6B7280"/>
|
|
|
+
|
|
|
+ <StackPanel Spacing="2">
|
|
|
+ <TextBlock Text="INFLOW" FontFamily="Consolas, monospace" FontSize="9" Foreground="#4B5563"/>
|
|
|
+ <TextBlock FontFamily="Consolas, monospace" FontSize="16" FontWeight="Bold" Foreground="#00897B">
|
|
|
+ <Run Text="{Binding InflowRate, StringFormat='{}{0:F1}'}"/>
|
|
|
+ <Run Text=" m³/h" FontSize="10" Foreground="#6B7280"/>
|
|
|
+ </TextBlock>
|
|
|
+ </StackPanel>
|
|
|
+
|
|
|
+ <Border Background="#1C2333" Height="1"/>
|
|
|
+
|
|
|
+ <StackPanel Spacing="2">
|
|
|
+ <TextBlock Text="OUTFLOW" FontFamily="Consolas, monospace" FontSize="9" Foreground="#4B5563"/>
|
|
|
+ <TextBlock FontFamily="Consolas, monospace" FontSize="16" FontWeight="Bold" Foreground="#2E7D32">
|
|
|
+ <Run Text="{Binding OutflowRate, StringFormat='{}{0:F1}'}"/>
|
|
|
+ <Run Text=" m³/h" FontSize="10" Foreground="#6B7280"/>
|
|
|
+ </TextBlock>
|
|
|
+ </StackPanel>
|
|
|
+
|
|
|
+ <Border Background="#1C2333" Height="1"/>
|
|
|
+
|
|
|
+ <StackPanel Spacing="2">
|
|
|
+ <TextBlock Text="DELTA" FontFamily="Consolas, monospace" FontSize="9" Foreground="#4B5563"/>
|
|
|
+ <TextBlock FontFamily="Consolas, monospace" FontSize="14" Foreground="#F59E0B">
|
|
|
+ <Run Text="{Binding FlowDelta, StringFormat='{}{0:F1}'}"/>
|
|
|
+ <Run Text=" m³/h" FontSize="10" Foreground="#6B7280"/>
|
|
|
+ </TextBlock>
|
|
|
+ </StackPanel>
|
|
|
+ </StackPanel>
|
|
|
+ </Border>
|
|
|
+
|
|
|
+ <!-- ─── 运行统计 ─── -->
|
|
|
+ <Border Canvas.Left="700" Canvas.Top="300" Width="160" Height="140"
|
|
|
+ Background="#111820" BorderBrush="#1C2333" BorderThickness="1" CornerRadius="2">
|
|
|
+ <StackPanel Margin="10,8" Spacing="6">
|
|
|
+ <TextBlock Text="STATISTICS" FontFamily="Consolas, monospace"
|
|
|
+ FontSize="10" Foreground="#6B7280"/>
|
|
|
+
|
|
|
+ <Grid ColumnDefinitions="*,Auto">
|
|
|
+ <TextBlock Grid.Column="0" Text="RUNTIME" FontFamily="Consolas, monospace" FontSize="10" Foreground="#4B5563"/>
|
|
|
+ <TextBlock Grid.Column="1" Text="{Binding RunningTime}" FontFamily="Consolas, monospace" FontSize="10" Foreground="#9CA3AF"/>
|
|
|
+ </Grid>
|
|
|
+
|
|
|
+ <Grid ColumnDefinitions="*,Auto">
|
|
|
+ <TextBlock Grid.Column="0" Text="DEVICES" FontFamily="Consolas, monospace" FontSize="10" Foreground="#4B5563"/>
|
|
|
+ <TextBlock Grid.Column="1" Text="{Binding RunningDeviceCount, StringFormat='{}{0} ON'}" FontFamily="Consolas, monospace" FontSize="10" Foreground="#00897B"/>
|
|
|
+ </Grid>
|
|
|
+
|
|
|
+ <Grid ColumnDefinitions="*,Auto">
|
|
|
+ <TextBlock Grid.Column="0" Text="ALARMS" FontFamily="Consolas, monospace" FontSize="10" Foreground="#4B5563"/>
|
|
|
+ <TextBlock Grid.Column="1" Text="{Binding AlarmCount, StringFormat='{}{0}'}" FontFamily="Consolas, monospace" FontSize="10" Foreground="#EF4444"/>
|
|
|
+ </Grid>
|
|
|
+
|
|
|
+ <Border Background="#1C2333" Height="1"/>
|
|
|
+
|
|
|
+ <TextBlock Text="EFFICIENCY" FontFamily="Consolas, monospace" FontSize="10" Foreground="#4B5563"/>
|
|
|
+ <TextBlock FontFamily="Consolas, monospace" FontSize="18" FontWeight="Bold" Foreground="#00897B">
|
|
|
+ <Run Text="{Binding Efficiency, StringFormat='{}{0:F0}'}"/>
|
|
|
+ <Run Text="%" FontSize="12" Foreground="#6B7280"/>
|
|
|
+ </TextBlock>
|
|
|
+ </StackPanel>
|
|
|
+ </Border>
|
|
|
+ </Canvas>
|
|
|
</Border>
|
|
|
|
|
|
- <!-- 流程箭头 -->
|
|
|
- <Path Data="M 140 100 L 200 100" Stroke="#58A6FF" StrokeThickness="2">
|
|
|
- <Path.Data>
|
|
|
- <StreamGeometry>M 140 100 L 200 100</StreamGeometry>
|
|
|
- </Path.Data>
|
|
|
- </Path>
|
|
|
- <Path Data="M 320 100 L 380 100" Stroke="#58A6FF" StrokeThickness="2"/>
|
|
|
- <Path Data="M 500 100 L 560 100" Stroke="#58A6FF" StrokeThickness="2"/>
|
|
|
- </Canvas>
|
|
|
+ <!-- 底部设备状态条 -->
|
|
|
+ <Border Grid.Row="2" Background="#111820" CornerRadius="2" Margin="0,4,0,0" Padding="8,6">
|
|
|
+ <StackPanel Orientation="Horizontal" Spacing="16">
|
|
|
+ <!-- 设备 LED 指示 -->
|
|
|
+ <StackPanel Orientation="Horizontal" Spacing="4">
|
|
|
+ <Border Width="8" Height="8" CornerRadius="4"
|
|
|
+ Background="{Binding Pump1StatusColor}"/>
|
|
|
+ <TextBlock Text="P1" FontFamily="Consolas, monospace" FontSize="10" Foreground="#6B7280"/>
|
|
|
+ </StackPanel>
|
|
|
+ <StackPanel Orientation="Horizontal" Spacing="4">
|
|
|
+ <Border Width="8" Height="8" CornerRadius="4"
|
|
|
+ Background="{Binding Pump2StatusColor}"/>
|
|
|
+ <TextBlock Text="P2" FontFamily="Consolas, monospace" FontSize="10" Foreground="#6B7280"/>
|
|
|
+ </StackPanel>
|
|
|
+ <StackPanel Orientation="Horizontal" Spacing="4">
|
|
|
+ <Border Width="8" Height="8" CornerRadius="4"
|
|
|
+ Background="{Binding Pump3StatusColor}"/>
|
|
|
+ <TextBlock Text="P3" FontFamily="Consolas, monospace" FontSize="10" Foreground="#6B7280"/>
|
|
|
+ </StackPanel>
|
|
|
+ <StackPanel Orientation="Horizontal" Spacing="4">
|
|
|
+ <Border Width="8" Height="8" CornerRadius="4"
|
|
|
+ Background="{Binding Pump4StatusColor}"/>
|
|
|
+ <TextBlock Text="P4" FontFamily="Consolas, monospace" FontSize="10" Foreground="#6B7280"/>
|
|
|
+ </StackPanel>
|
|
|
+ <StackPanel Orientation="Horizontal" Spacing="4">
|
|
|
+ <Border Width="8" Height="8" CornerRadius="4"
|
|
|
+ Background="{Binding Pump5StatusColor}"/>
|
|
|
+ <TextBlock Text="P5" FontFamily="Consolas, monospace" FontSize="10" Foreground="#6B7280"/>
|
|
|
+ </StackPanel>
|
|
|
+
|
|
|
+ <Border Background="#1C2333" Width="1" Height="16"/>
|
|
|
+
|
|
|
+ <StackPanel Orientation="Horizontal" Spacing="4">
|
|
|
+ <Border Width="8" Height="8" CornerRadius="4"
|
|
|
+ Background="{Binding Fan1StatusColor}"/>
|
|
|
+ <TextBlock Text="F1" FontFamily="Consolas, monospace" FontSize="10" Foreground="#6B7280"/>
|
|
|
+ </StackPanel>
|
|
|
+ <StackPanel Orientation="Horizontal" Spacing="4">
|
|
|
+ <Border Width="8" Height="8" CornerRadius="4"
|
|
|
+ Background="{Binding Fan2StatusColor}"/>
|
|
|
+ <TextBlock Text="F2" FontFamily="Consolas, monospace" FontSize="10" Foreground="#6B7280"/>
|
|
|
+ </StackPanel>
|
|
|
+
|
|
|
+ <Border Background="#1C2333" Width="1" Height="16"/>
|
|
|
+
|
|
|
+ <StackPanel Orientation="Horizontal" Spacing="4">
|
|
|
+ <Border Width="8" Height="8" CornerRadius="4"
|
|
|
+ Background="{Binding Valve1StatusColor}"/>
|
|
|
+ <TextBlock Text="V1" FontFamily="Consolas, monospace" FontSize="10" Foreground="#6B7280"/>
|
|
|
+ </StackPanel>
|
|
|
+ <StackPanel Orientation="Horizontal" Spacing="4">
|
|
|
+ <Border Width="8" Height="8" CornerRadius="4"
|
|
|
+ Background="{Binding Valve2StatusColor}"/>
|
|
|
+ <TextBlock Text="V2" FontFamily="Consolas, monospace" FontSize="10" Foreground="#6B7280"/>
|
|
|
+ </StackPanel>
|
|
|
+ <StackPanel Orientation="Horizontal" Spacing="4">
|
|
|
+ <Border Width="8" Height="8" CornerRadius="4"
|
|
|
+ Background="{Binding Valve3StatusColor}"/>
|
|
|
+ <TextBlock Text="V3" FontFamily="Consolas, monospace" FontSize="10" Foreground="#6B7280"/>
|
|
|
+ </StackPanel>
|
|
|
+ <StackPanel Orientation="Horizontal" Spacing="4">
|
|
|
+ <Border Width="8" Height="8" CornerRadius="4"
|
|
|
+ Background="{Binding Valve4StatusColor}"/>
|
|
|
+ <TextBlock Text="V4" FontFamily="Consolas, monospace" FontSize="10" Foreground="#6B7280"/>
|
|
|
+ </StackPanel>
|
|
|
+ </StackPanel>
|
|
|
+ </Border>
|
|
|
+ </Grid>
|
|
|
</Border>
|
|
|
|
|
|
<!-- 右侧面板 -->
|
|
|
- <Grid Grid.Column="1" RowDefinitions="Auto,Auto,Auto,*,Auto">
|
|
|
+ <Grid Grid.Column="1" RowDefinitions="Auto,Auto,*,Auto">
|
|
|
|
|
|
<!-- 流量仪表 -->
|
|
|
- <Border Grid.Row="0" Background="#161B22" CornerRadius="8" Padding="10" Margin="0,0,0,10">
|
|
|
+ <Border Grid.Row="0" Background="#111820" CornerRadius="2" Padding="10,8" Margin="0,0,0,4"
|
|
|
+ BorderBrush="#1C2333" BorderThickness="1">
|
|
|
<StackPanel>
|
|
|
- <TextBlock Text="流量监测" FontWeight="Bold" Foreground="White" Margin="0,0,0,10"/>
|
|
|
+ <StackPanel Orientation="Horizontal" Spacing="6" Margin="0,0,0,8">
|
|
|
+ <Border Background="#00897B" Width="3" Height="14" CornerRadius="1"/>
|
|
|
+ <TextBlock Text="FLOW METERS" FontFamily="Consolas, monospace"
|
|
|
+ FontSize="11" Foreground="#9CA3AF"/>
|
|
|
+ </StackPanel>
|
|
|
<Grid ColumnDefinitions="*,*">
|
|
|
- <controls:GaugeControl Grid.Column="0" Width="120" Height="140"
|
|
|
- Value="{Binding InflowRate}" Title="进水" Unit="m³/h"
|
|
|
- MaxValue="100"/>
|
|
|
- <controls:GaugeControl Grid.Column="1" Width="120" Height="140"
|
|
|
- Value="{Binding OutflowRate}" Title="出水" Unit="m³/h"
|
|
|
- MaxValue="100"
|
|
|
- ValueColor="#66BB6A"/>
|
|
|
+ <controls:GaugeControl Grid.Column="0" Width="110" Height="130"
|
|
|
+ Value="{Binding InflowRate}" Title="IN" Unit="m³/h"
|
|
|
+ MaxValue="100" ValueColor="#00897B"/>
|
|
|
+ <controls:GaugeControl Grid.Column="1" Width="110" Height="130"
|
|
|
+ Value="{Binding OutflowRate}" Title="OUT" Unit="m³/h"
|
|
|
+ MaxValue="100" ValueColor="#2E7D32"/>
|
|
|
</Grid>
|
|
|
</StackPanel>
|
|
|
</Border>
|
|
|
|
|
|
<!-- 设备状态 -->
|
|
|
- <Border Grid.Row="1" Background="#161B22" CornerRadius="8" Padding="10" Margin="0,0,0,10">
|
|
|
+ <Border Grid.Row="1" Background="#111820" CornerRadius="2" Padding="10,8" Margin="0,0,0,4"
|
|
|
+ BorderBrush="#1C2333" BorderThickness="1">
|
|
|
<StackPanel>
|
|
|
- <TextBlock Text="设备状态" FontWeight="Bold" Foreground="White" Margin="0,0,0,10"/>
|
|
|
- <StackPanel Spacing="5">
|
|
|
- <controls:StatusCard Title="进水泵1" Status="{Binding Pump1Status}" Icon="🔄"
|
|
|
+ <StackPanel Orientation="Horizontal" Spacing="6" Margin="0,0,0,8">
|
|
|
+ <Border Background="#F59E0B" Width="3" Height="14" CornerRadius="1"/>
|
|
|
+ <TextBlock Text="DEVICE STATUS" FontFamily="Consolas, monospace"
|
|
|
+ FontSize="11" Foreground="#9CA3AF"/>
|
|
|
+ </StackPanel>
|
|
|
+ <StackPanel Spacing="3">
|
|
|
+ <controls:StatusCard Title="进水泵1" Status="{Binding Pump1Status}" Icon="P1"
|
|
|
IsActive="{Binding Pump1Running}"/>
|
|
|
- <controls:StatusCard Title="进水泵2" Status="{Binding Pump2Status}" Icon="🔄"
|
|
|
+ <controls:StatusCard Title="进水泵2" Status="{Binding Pump2Status}" Icon="P2"
|
|
|
IsActive="{Binding Pump2Running}"/>
|
|
|
- <controls:StatusCard Title="回流泵" Status="{Binding Pump3Status}" Icon="🔄"
|
|
|
+ <controls:StatusCard Title="回流泵" Status="{Binding Pump3Status}" Icon="P3"
|
|
|
IsActive="{Binding Pump3Running}"/>
|
|
|
- <controls:StatusCard Title="风机1" Status="{Binding Fan1Status}" Icon="🌀"
|
|
|
+ <controls:StatusCard Title="风机1" Status="{Binding Fan1Status}" Icon="F1"
|
|
|
IsActive="{Binding Fan1Running}"/>
|
|
|
- <controls:StatusCard Title="风机2" Status="{Binding Fan2Status}" Icon="🌀"
|
|
|
+ <controls:StatusCard Title="风机2" Status="{Binding Fan2Status}" Icon="F2"
|
|
|
IsActive="{Binding Fan2Running}"/>
|
|
|
</StackPanel>
|
|
|
</StackPanel>
|
|
|
</Border>
|
|
|
|
|
|
- <!-- 报警信息 -->
|
|
|
- <Border Grid.Row="2" Background="#161B22" CornerRadius="8" Padding="10" Margin="0,0,0,10"
|
|
|
+ <!-- 报警面板 -->
|
|
|
+ <Border Grid.Row="2" Background="#111820" CornerRadius="2" Padding="10,8" Margin="0,0,0,4"
|
|
|
+ BorderBrush="#1C2333" BorderThickness="1"
|
|
|
IsVisible="{Binding HasAlarm}">
|
|
|
<StackPanel>
|
|
|
- <TextBlock Text="⚠️ 报警信息" FontWeight="Bold" Foreground="#F85149" Margin="0,0,0,10"/>
|
|
|
- <Border Background="#F85149" CornerRadius="5" Padding="10">
|
|
|
- <TextBlock Text="{Binding AlarmMessage}" Foreground="White" TextWrapping="Wrap"/>
|
|
|
+ <StackPanel Orientation="Horizontal" Spacing="6" Margin="0,0,0,8">
|
|
|
+ <Border Background="#EF4444" Width="3" Height="14" CornerRadius="1"/>
|
|
|
+ <TextBlock Text="ALARM" FontFamily="Consolas, monospace"
|
|
|
+ FontSize="11" Foreground="#EF4444"/>
|
|
|
+ <TextBlock Text="{Binding AlarmCount, StringFormat='({0})'}"
|
|
|
+ FontFamily="Consolas, monospace" FontSize="11" Foreground="#EF4444"/>
|
|
|
+ </StackPanel>
|
|
|
+ <Border Background="#1C0000" BorderBrush="#EF4444" BorderThickness="1" Padding="8">
|
|
|
+ <TextBlock Text="{Binding AlarmMessage}" Foreground="#EF4444"
|
|
|
+ FontFamily="Consolas, monospace" FontSize="11"
|
|
|
+ TextWrapping="Wrap"/>
|
|
|
</Border>
|
|
|
</StackPanel>
|
|
|
</Border>
|
|
|
|
|
|
<!-- 快捷操作 -->
|
|
|
- <Border Grid.Row="4" Background="#161B22" CornerRadius="8" Padding="10">
|
|
|
+ <Border Grid.Row="3" Background="#111820" CornerRadius="2" Padding="10,8"
|
|
|
+ BorderBrush="#1C2333" BorderThickness="1">
|
|
|
<StackPanel>
|
|
|
- <TextBlock Text="快捷操作" FontWeight="Bold" Foreground="White" Margin="0,0,0,10"/>
|
|
|
+ <StackPanel Orientation="Horizontal" Spacing="6" Margin="0,0,0,8">
|
|
|
+ <Border Background="#3B82F6" Width="3" Height="14" CornerRadius="1"/>
|
|
|
+ <TextBlock Text="QUICK OPS" FontFamily="Consolas, monospace"
|
|
|
+ FontSize="11" Foreground="#9CA3AF"/>
|
|
|
+ </StackPanel>
|
|
|
<WrapPanel HorizontalAlignment="Center">
|
|
|
- <Button Content="全部启动" Margin="5" Padding="12,6"/>
|
|
|
- <Button Content="全部停止" Margin="5" Padding="12,6"/>
|
|
|
- <Button Content="报警确认" Margin="5" Padding="12,6"/>
|
|
|
- <Button Content="数据导出" Margin="5" Padding="12,6"/>
|
|
|
+ <Button Content="START ALL" Margin="3" Padding="10,5"
|
|
|
+ FontFamily="Consolas, monospace" FontSize="10"
|
|
|
+ Background="#1C2333" Foreground="#00897B" BorderBrush="#00897B"/>
|
|
|
+ <Button Content="STOP ALL" Margin="3" Padding="10,5"
|
|
|
+ FontFamily="Consolas, monospace" FontSize="10"
|
|
|
+ Background="#1C2333" Foreground="#EF4444" BorderBrush="#EF4444"/>
|
|
|
+ <Button Content="ACK ALARM" Margin="3" Padding="10,5"
|
|
|
+ FontFamily="Consolas, monospace" FontSize="10"
|
|
|
+ Background="#1C2333" Foreground="#F59E0B" BorderBrush="#F59E0B"/>
|
|
|
+ <Button Content="EXPORT" Margin="3" Padding="10,5"
|
|
|
+ FontFamily="Consolas, monospace" FontSize="10"
|
|
|
+ Background="#1C2333" Foreground="#3B82F6" BorderBrush="#3B82F6"/>
|
|
|
</WrapPanel>
|
|
|
</StackPanel>
|
|
|
</Border>
|
|
|
</Grid>
|
|
|
</Grid>
|
|
|
|
|
|
- <!-- 底部状态栏 -->
|
|
|
- <Border Grid.Row="2" Background="#161B22" CornerRadius="8" Padding="12" Margin="0,10,0,0">
|
|
|
- <Grid ColumnDefinitions="Auto,*,Auto,Auto,Auto">
|
|
|
- <StackPanel Grid.Column="0" Orientation="Horizontal" Spacing="20">
|
|
|
- <TextBlock Foreground="#8B949E" FontSize="11">
|
|
|
- <Run Text="进水: "/>
|
|
|
- <Run Text="{Binding InflowRate, StringFormat='{}{0:F1} m³/h'}" Foreground="#58A6FF"/>
|
|
|
- </TextBlock>
|
|
|
- <TextBlock Foreground="#8B949E" FontSize="11">
|
|
|
- <Run Text="出水: "/>
|
|
|
- <Run Text="{Binding OutflowRate, StringFormat='{}{0:F1} m³/h'}" Foreground="#66BB6A"/>
|
|
|
- </TextBlock>
|
|
|
- </StackPanel>
|
|
|
+ <!-- ═══ 底部状态栏 ═══ -->
|
|
|
+ <Border Grid.Row="2" Background="#111820" BorderBrush="#1C2333" BorderThickness="0,1,0,0">
|
|
|
+ <Grid ColumnDefinitions="Auto,*,Auto,Auto,Auto,Auto" Margin="16,0">
|
|
|
+ <TextBlock Grid.Column="0" VerticalAlignment="Center"
|
|
|
+ FontFamily="Consolas, monospace" FontSize="11" Foreground="#4B5563">
|
|
|
+ <Run Text="INFLOW: "/>
|
|
|
+ <Run Text="{Binding InflowRate, StringFormat='{}{0:F1}'}" Foreground="#00897B"/>
|
|
|
+ <Run Text=" m³/h"/>
|
|
|
+ </TextBlock>
|
|
|
+
|
|
|
+ <TextBlock Grid.Column="1" VerticalAlignment="Center" Margin="24,0"
|
|
|
+ FontFamily="Consolas, monospace" FontSize="11" Foreground="#4B5563">
|
|
|
+ <Run Text="OUTFLOW: "/>
|
|
|
+ <Run Text="{Binding OutflowRate, StringFormat='{}{0:F1}'}" Foreground="#2E7D32"/>
|
|
|
+ <Run Text=" m³/h"/>
|
|
|
+ </TextBlock>
|
|
|
+
|
|
|
+ <TextBlock Grid.Column="2" VerticalAlignment="Center"
|
|
|
+ FontFamily="Consolas, monospace" FontSize="11" Foreground="#4B5563">
|
|
|
+ <Run Text="DEVICES: "/>
|
|
|
+ <Run Text="{Binding RunningDeviceCount, StringFormat='{}{0}'}" Foreground="#00897B"/>
|
|
|
+ <Run Text=" ACTIVE"/>
|
|
|
+ </TextBlock>
|
|
|
|
|
|
- <TextBlock Grid.Column="2" Foreground="#8B949E" FontSize="11">
|
|
|
- <Run Text="运行设备: "/>
|
|
|
- <Run Text="{Binding RunningDeviceCount}" Foreground="#58A6FF"/>
|
|
|
- <Run Text=" 台"/>
|
|
|
+ <TextBlock Grid.Column="3" VerticalAlignment="Center" Margin="24,0"
|
|
|
+ FontFamily="Consolas, monospace" FontSize="11" Foreground="#4B5563">
|
|
|
+ <Run Text="ALARM: "/>
|
|
|
+ <Run Text="{Binding AlarmCount, StringFormat='{}{0}'}" Foreground="#EF4444"/>
|
|
|
</TextBlock>
|
|
|
|
|
|
- <TextBlock Grid.Column="3" Foreground="#8B949E" FontSize="11" Margin="20,0">
|
|
|
- <Run Text="报警: "/>
|
|
|
- <Run Text="{Binding AlarmCount}" Foreground="#F85149"/>
|
|
|
- <Run Text=" 条"/>
|
|
|
+ <TextBlock Grid.Column="4" VerticalAlignment="Center" Margin="24,0"
|
|
|
+ FontFamily="Consolas, monospace" FontSize="11" Foreground="#4B5563">
|
|
|
+ <Run Text="UPTIME: "/>
|
|
|
+ <Run Text="{Binding RunningTime}" Foreground="#9CA3AF"/>
|
|
|
</TextBlock>
|
|
|
|
|
|
- <TextBlock Grid.Column="4" Foreground="#8B949E" FontSize="11">
|
|
|
- <Run Text="系统运行: "/>
|
|
|
- <Run Text="{Binding RunningTime}" Foreground="#58A6FF"/>
|
|
|
+ <TextBlock Grid.Column="5" VerticalAlignment="Center"
|
|
|
+ FontFamily="Consolas, monospace" FontSize="11" Foreground="#4B5563">
|
|
|
+ <Run Text="v3.0.0"/>
|
|
|
</TextBlock>
|
|
|
</Grid>
|
|
|
</Border>
|