TempStatus.xaml 9.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. <UserControl x:Class="HistoryView.Controls.TempStatus"
  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  5. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  6. xmlns:local="clr-namespace:HistoryView.Controls"
  7. xmlns:converter="clr-namespace:HistoryView.Converters"
  8. mc:Ignorable="d"
  9. x:Name="This"
  10. d:DesignHeight="450" d:DesignWidth="800">
  11. <UserControl.Resources>
  12. <converter:MutiValueToVisibility x:Key="VisConvert"/>
  13. <converter:ChannelModeToImage x:Key="ChannelMode"/>
  14. <converter:StatusToBrush x:Key="StatusBrush"/>
  15. <converter:AutoTuntToVisibility x:Key="AutoTune"/>
  16. <converter:StatusToVisibility x:Key="StatusVis"/>
  17. <converter:TcBrockenToVisibility x:Key="TcBroken"/>
  18. <converter:ChannelModeToVisbility x:Key="ChannelModeVis"/>
  19. <converter:ChannelModeToChannelDisplay x:Key="ChannelModeHide"/>
  20. </UserControl.Resources>
  21. <Border CornerRadius="4" BorderThickness="0" Width="68" >
  22. <Border.BorderBrush>
  23. <MultiBinding Converter="{StaticResource StatusBrush}" ConverterParameter="Bright">
  24. <Binding ElementName="This" Path="Source.Inhibit"/>
  25. <Binding ElementName="This" Path="Mini8Status"/>
  26. <Binding ElementName="This" Path="Source.Status"/>
  27. <Binding ElementName="This" Path="IsConnected"/>
  28. </MultiBinding>
  29. </Border.BorderBrush>
  30. <Border.Background>
  31. <MultiBinding Converter="{StaticResource StatusBrush}" ConverterParameter="Light">
  32. <Binding ElementName="This" Path="Source.Inhibit"/>
  33. <Binding ElementName="This" Path="Mini8Status"/>
  34. <Binding ElementName="This" Path="Source.Status"/>
  35. <Binding ElementName="This" Path="IsConnected"/>
  36. </MultiBinding>
  37. </Border.Background>
  38. <Grid Margin="0,2">
  39. <Grid.RowDefinitions>
  40. <RowDefinition Height="auto" MinHeight="24"/>
  41. <RowDefinition Height="auto"/>
  42. <RowDefinition Height="auto"/>
  43. <RowDefinition Height="0"/>
  44. <RowDefinition Height="auto"/>
  45. </Grid.RowDefinitions>
  46. <TextBlock Foreground="Black" VerticalAlignment="Center" HorizontalAlignment="Center" Block.TextAlignment="Center" TextWrapping="WrapWithOverflow" FontSize="10" Text="{Binding ElementName=This, Path=Source.Name}"/>
  47. <ProgressBar Grid.Row="1" Height="3" BorderThickness="0" Margin="6,0"
  48. Value="{Binding ElementName=This, Path=Source.WorkingOutput}"
  49. Foreground="{StaticResource NiceBlue}" Background="{StaticResource LightDisableColor}">
  50. </ProgressBar>
  51. <Border Grid.Row="2" Panel.ZIndex="1" Margin="2,0" CornerRadius="2">
  52. <Border.Visibility>
  53. <MultiBinding Converter="{StaticResource TcBroken}">
  54. <Binding ElementName="This" Path="Source.ChannelMode"/>
  55. <Binding ElementName="This" Path="Source.SensorBreakAlarm"/>
  56. </MultiBinding>
  57. </Border.Visibility>
  58. <Border.Background>
  59. <MultiBinding Converter="{StaticResource StatusBrush}" ConverterParameter="Bright">
  60. <Binding ElementName="This" Path="Source.Inhibit"/>
  61. <Binding ElementName="This" Path="Mini8Status"/>
  62. <Binding ElementName="This" Path="Source.Status"/>
  63. <Binding ElementName="This" Path="IsConnected"/>
  64. </MultiBinding>
  65. </Border.Background>
  66. <TextBlock VerticalAlignment="Center" HorizontalAlignment="Center">TcBorcken</TextBlock>
  67. </Border>
  68. <StackPanel Grid.Row="2" Orientation="Horizontal" HorizontalAlignment="Center" Visibility="{Binding ElementName=This, Path=Source.Inhibit, Converter={StaticResource StatusVis}}">
  69. <TextBlock Grid.Row="2" Foreground="Black" VerticalAlignment="Center" HorizontalAlignment="Center" Margin="0,0,4,0"
  70. Visibility="{Binding ElementName=This, Path=Source.ChannelMode, Converter={StaticResource ChannelModeHide}}">
  71. <Run Text="{Binding ElementName=This, Path=Source.PV ,StringFormat=0.00}"/>
  72. <!--<Run>℃</Run>-->
  73. </TextBlock>
  74. <Border Grid.Row="6" BorderBrush="Black" BorderThickness="0" VerticalAlignment="Center" HorizontalAlignment="Center">
  75. <Image Source="{StaticResource ArrowUP}" Width="16" VerticalAlignment="Center" HorizontalAlignment="Center">
  76. <Image.Visibility>
  77. <MultiBinding Converter="{StaticResource VisConvert}" ConverterParameter="Over">
  78. <Binding ElementName="This" Path="Source.CapsWarning"/>
  79. <Binding ElementName="This" Path="Source.FloorWarning"/>
  80. <Binding ElementName="This" Path="Source.PV"/>
  81. <Binding ElementName="This" Path="Source.Inhibit"/>
  82. <Binding ElementName="This" Path="Source.ChannelMode"/>
  83. <Binding ElementName="This" Path="IsEnable"/>
  84. <Binding ElementName="This" Path="IsConnected"/>
  85. </MultiBinding>
  86. </Image.Visibility>
  87. </Image>
  88. </Border>
  89. <Border Grid.Row="6" BorderBrush="Black" BorderThickness="0" VerticalAlignment="Center" HorizontalAlignment="Center">
  90. <Image Source="{StaticResource ArrowDown}" Width="16" VerticalAlignment="Center" HorizontalAlignment="Center">
  91. <Image.Visibility>
  92. <MultiBinding Converter="{StaticResource VisConvert}" ConverterParameter="Under">
  93. <Binding ElementName="This" Path="Source.CapsWarning"/>
  94. <Binding ElementName="This" Path="Source.FloorWarning"/>
  95. <Binding ElementName="This" Path="Source.PV"/>
  96. <Binding ElementName="This" Path="Source.Inhibit"/>
  97. <Binding ElementName="This" Path="Source.ChannelMode"/>
  98. <Binding ElementName="This" Path="IsEnable"/>
  99. <Binding ElementName="This" Path="IsConnected"/>
  100. </MultiBinding>
  101. </Image.Visibility>
  102. </Image>
  103. </Border>
  104. </StackPanel>
  105. <Border Grid.Row="4" Panel.ZIndex="1" Margin="2,0" CornerRadius="2" Visibility="{Binding ElementName=This, Path=Source.ChannelMode, Converter={StaticResource ChannelModeVis}}">
  106. <Border.Background>
  107. <MultiBinding Converter="{StaticResource StatusBrush}" ConverterParameter="Light">
  108. <Binding ElementName="This" Path="Source.Inhibit"/>
  109. <Binding ElementName="This" Path="Mini8Status"/>
  110. <Binding ElementName="This" Path="Source.Status"/>
  111. <Binding ElementName="This" Path="IsConnected"/>
  112. </MultiBinding>
  113. </Border.Background>
  114. <Image Grid.Row="4" Source="{Binding ElementName=This, Path=Source.ChannelMode, Converter={StaticResource ChannelMode}}" Height="16"/>
  115. </Border>
  116. <Border Grid.Row="4" Panel.ZIndex="1" Margin="2,0" CornerRadius="2">
  117. <Border.Background>
  118. <MultiBinding Converter="{StaticResource StatusBrush}" ConverterParameter="Bright">
  119. <Binding ElementName="This" Path="Source.Inhibit"/>
  120. <Binding ElementName="This" Path="Mini8Status"/>
  121. <Binding ElementName="This" Path="Source.Status"/>
  122. <Binding ElementName="This" Path="IsConnected"/>
  123. <Binding ElementName="This" Path="Source.AutoTuneStatus"/>
  124. </MultiBinding>
  125. </Border.Background>
  126. <Border.Visibility>
  127. <MultiBinding Converter="{StaticResource AutoTune}">
  128. <Binding ElementName="This" Path="Source.Inhibit"/>
  129. <Binding ElementName="This" Path="Source.AutoTuneStatus"/>
  130. <Binding ElementName="This" Path="Source.ActiveTuneSet"/>
  131. </MultiBinding>
  132. </Border.Visibility>
  133. <TextBlock VerticalAlignment="Center" HorizontalAlignment="Center" Text="{Binding ElementName=This, Path=Source.AutoTuneStatus}"/>
  134. </Border>
  135. <TextBlock Grid.Row="4" Foreground="Black" VerticalAlignment="Center" HorizontalAlignment="Center" Margin="0,0,4,0">
  136. <Run>SP:</Run>
  137. <Run Text="{Binding ElementName=This, Path=Source.SetPoint ,StringFormat=0}"/>
  138. </TextBlock>
  139. </Grid>
  140. </Border>
  141. </UserControl>