SignalTowerConfigView.xaml 8.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. <UserControl x:Class="VirgoUI.Client.Models.Common.SignalTowerConfig.SignalTowerConfigView"
  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:i="http://schemas.microsoft.com/expression/2010/interactivity"
  7. xmlns:converter="clr-namespace:VirgoUI.Client.Models.Converter"
  8. xmlns:signalTowerConfig="clr-namespace:MECF.Framework.UI.Client.CenterViews.Configs.SignalTowerConfig" xmlns:micro="http://www.caliburn.org"
  9. mc:Ignorable="d"
  10. d:DesignHeight="1024" d:DesignWidth="1900">
  11. <UserControl.Resources>
  12. <converter:Bool2Not x:Key="Bool2Not"/>
  13. <converter:BoolCollapsedConverter x:Key="BoolVisibility"/>
  14. </UserControl.Resources>
  15. <Grid>
  16. <Grid.RowDefinitions>
  17. <RowDefinition Height="30"/>
  18. <RowDefinition Height="*"/>
  19. </Grid.RowDefinitions>
  20. <Grid Grid.Row="0">
  21. <Grid.ColumnDefinitions>
  22. <ColumnDefinition Width="150"/>
  23. <ColumnDefinition Width="100"/>
  24. <ColumnDefinition Width="100"/>
  25. <ColumnDefinition Width="*"/>
  26. </Grid.ColumnDefinitions>
  27. <Button Content="Save" Grid.Column="1" Width="90" Height="30" Margin="0" Padding="0" >
  28. <i:Interaction.Triggers>
  29. <i:EventTrigger EventName="Click">
  30. <micro:ActionMessage MethodName="SaveSelection">
  31. </micro:ActionMessage>
  32. </i:EventTrigger>
  33. </i:Interaction.Triggers>
  34. </Button>
  35. <Button Content="Cancel" Grid.Column="2" Width="90" Height="30" Margin="0" Padding="0" >
  36. <i:Interaction.Triggers>
  37. <i:EventTrigger EventName="Click">
  38. <micro:ActionMessage MethodName="CancelSelection">
  39. </micro:ActionMessage>
  40. </i:EventTrigger>
  41. </i:Interaction.Triggers>
  42. </Button>
  43. </Grid>
  44. <Grid Grid.Row="1">
  45. <DataGrid HorizontalAlignment="Left" CanUserAddRows="False" AutoGenerateColumns="False" RowHeaderWidth="0"
  46. VirtualizingPanel.IsVirtualizing="True" VirtualizingPanel.VirtualizationMode="Recycling"
  47. ItemsSource="{Binding SignalTowerData}" Margin="0,5,0,0" >
  48. <DataGrid.Columns>
  49. <DataGridTemplateColumn Header="Condition Name" Width="300">
  50. <DataGridTemplateColumn.CellTemplate>
  51. <DataTemplate>
  52. <TextBlock Text="{Binding Name}" Margin="5,0" FontFamily="Arial" FontSize="14" Foreground="{DynamicResource FG_Black}" HorizontalAlignment="Left" VerticalAlignment="Center" >
  53. </TextBlock>
  54. </DataTemplate>
  55. </DataGridTemplateColumn.CellTemplate>
  56. </DataGridTemplateColumn>
  57. <DataGridTemplateColumn Header="Red" Width="140">
  58. <DataGridTemplateColumn.CellTemplate>
  59. <DataTemplate>
  60. <Border HorizontalAlignment="Stretch" Background="OrangeRed">
  61. <StackPanel Orientation="Horizontal">
  62. <CheckBox VerticalContentAlignment="Center" VerticalAlignment="Center" Content="ON" IsChecked="{Binding Path=IsRed, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Width="50" Height="25" ></CheckBox>
  63. <CheckBox Padding="10,0,0,0" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="Blinking" IsChecked="{Binding Path=IsRedBlinking, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Width="80" Height="25" ></CheckBox>
  64. </StackPanel>
  65. </Border>
  66. </DataTemplate>
  67. </DataGridTemplateColumn.CellTemplate>
  68. </DataGridTemplateColumn>
  69. <DataGridTemplateColumn Header="Yellow" Width="140">
  70. <DataGridTemplateColumn.CellTemplate>
  71. <DataTemplate>
  72. <Border HorizontalAlignment="Stretch" Background="LightGoldenrodYellow">
  73. <StackPanel Orientation="Horizontal">
  74. <CheckBox VerticalContentAlignment="Center" VerticalAlignment="Center" Content="ON" IsChecked="{Binding Path=IsYellow, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Width="50" Height="25" ></CheckBox>
  75. <CheckBox Padding="10,0,0,0" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="Blinking" IsChecked="{Binding Path=IsYellowBlinking, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Width="80" Height="25" ></CheckBox>
  76. </StackPanel> </Border>
  77. </DataTemplate>
  78. </DataGridTemplateColumn.CellTemplate>
  79. </DataGridTemplateColumn>
  80. <DataGridTemplateColumn Header="Green" Width="140">
  81. <DataGridTemplateColumn.CellTemplate>
  82. <DataTemplate>
  83. <Border HorizontalAlignment="Stretch" Background="LightGreen">
  84. <StackPanel Orientation="Horizontal">
  85. <CheckBox VerticalContentAlignment="Center" VerticalAlignment="Center" Content="ON" IsChecked="{Binding Path=IsGreen, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Width="50" Height="25" ></CheckBox>
  86. <CheckBox Padding="10,0,0,0" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="Blinking" IsChecked="{Binding Path=IsGreenBlinking, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Width="80" Height="25" ></CheckBox>
  87. </StackPanel> </Border>
  88. </DataTemplate>
  89. </DataGridTemplateColumn.CellTemplate>
  90. </DataGridTemplateColumn>
  91. <DataGridTemplateColumn Header="Blue" Width="140">
  92. <DataGridTemplateColumn.CellTemplate>
  93. <DataTemplate>
  94. <Border HorizontalAlignment="Stretch" Background="LightBlue">
  95. <StackPanel Orientation="Horizontal">
  96. <CheckBox VerticalContentAlignment="Center" VerticalAlignment="Center" Content="ON" IsChecked="{Binding Path=IsBlue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Width="50" Height="25" ></CheckBox>
  97. <CheckBox Padding="10,0,0,0" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="Blinking" IsChecked="{Binding Path=IsBlueBlinking, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Width="80" Height="25" ></CheckBox>
  98. </StackPanel> </Border>
  99. </DataTemplate>
  100. </DataGridTemplateColumn.CellTemplate>
  101. </DataGridTemplateColumn>
  102. <DataGridTemplateColumn Header="Buzzer" Width="140">
  103. <DataGridTemplateColumn.CellTemplate>
  104. <DataTemplate>
  105. <Border HorizontalAlignment="Stretch" Background="White">
  106. <StackPanel Orientation="Horizontal">
  107. <CheckBox VerticalContentAlignment="Center" VerticalAlignment="Center" Content="ON" IsChecked="{Binding Path=IsBuzzer, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Width="50" Height="25" ></CheckBox>
  108. <CheckBox Padding="10,0,0,0" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="Blinking" IsChecked="{Binding Path=IsBuzzerBlinking, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Width="80" Height="25" ></CheckBox>
  109. </StackPanel> </Border>
  110. </DataTemplate>
  111. </DataGridTemplateColumn.CellTemplate>
  112. </DataGridTemplateColumn>
  113. </DataGrid.Columns>
  114. </DataGrid>
  115. </Grid>
  116. </Grid>
  117. </UserControl>