MainWindow.xaml 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. <Window x:Class="athosSimulator.MainWindow"
  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  5. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  6. xmlns:local="clr-namespace:athosSimulator"
  7. mc:Ignorable="d"
  8. Title="Simulator" Height="450" Width="800">
  9. <Window.Resources>
  10. <Style TargetType="CheckBox">
  11. <Style.Triggers>
  12. <Trigger Property="IsChecked" Value="True">
  13. <Setter Property="Template">
  14. <Setter.Value>
  15. <ControlTemplate>
  16. <Canvas>
  17. <Ellipse Canvas.Top="-8" Canvas.Left="14" Width="15" Height="15" Fill="LightGreen"/>
  18. </Canvas>
  19. </ControlTemplate>
  20. </Setter.Value>
  21. </Setter>
  22. </Trigger>
  23. <Trigger Property="IsChecked" Value="False">
  24. <Setter Property="Template" >
  25. <Setter.Value>
  26. <ControlTemplate>
  27. <Canvas>
  28. <Ellipse Canvas.Top="-8" Canvas.Left="14" Width="15" Height="15" Fill="Gray"/>
  29. </Canvas>
  30. </ControlTemplate>
  31. </Setter.Value>
  32. </Setter>
  33. </Trigger>
  34. </Style.Triggers>
  35. </Style>
  36. </Window.Resources>
  37. <TabControl>
  38. <TabItem Header="IO">
  39. <Grid>
  40. <Grid.ColumnDefinitions>
  41. <ColumnDefinition Width="*"></ColumnDefinition>
  42. <ColumnDefinition Width="*"></ColumnDefinition>
  43. <ColumnDefinition Width="*"></ColumnDefinition>
  44. <ColumnDefinition Width="*"></ColumnDefinition>
  45. </Grid.ColumnDefinitions>
  46. <StackPanel Grid.Column="0" Orientation="Vertical">
  47. <TextBlock>DI</TextBlock>
  48. <ListView x:Name="DISource">
  49. <ListView.View>
  50. <GridView>
  51. <GridView.Columns>
  52. <GridViewColumn Header="Address" DisplayMemberBinding="{Binding Path=Address}"/>
  53. <GridViewColumn Header="Name" DisplayMemberBinding="{Binding Path=Name}"/>
  54. <GridViewColumn Header="BoolValue">
  55. <GridViewColumn.CellTemplate>
  56. <DataTemplate>
  57. <CheckBox IsChecked="{Binding Path=BoolValue}" BorderThickness="0" HorizontalAlignment="Center" Margin="0,0,0,0" IsEnabled="False">
  58. </CheckBox>
  59. </DataTemplate>
  60. </GridViewColumn.CellTemplate>
  61. </GridViewColumn>
  62. <!--<GridViewColumn Header="Description" DisplayMemberBinding="{Binding Path=Description}"/>-->
  63. </GridView.Columns>
  64. </GridView>
  65. </ListView.View>
  66. </ListView>
  67. </StackPanel>
  68. <StackPanel Grid.Column="1" Orientation="Vertical">
  69. <TextBlock>DO</TextBlock>
  70. <ListView x:Name="DOSource">
  71. <ListView.View>
  72. <GridView>
  73. <GridView.Columns>
  74. <GridViewColumn Header="Address" DisplayMemberBinding="{Binding Path=Address}"/>
  75. <GridViewColumn Header="Name" DisplayMemberBinding="{Binding Path=Name}"/>
  76. <GridViewColumn Header="BoolValue">
  77. <GridViewColumn.CellTemplate>
  78. <DataTemplate>
  79. <CheckBox IsChecked="{Binding Path=BoolValue}" BorderThickness="0" HorizontalAlignment="Center" Margin="0,0,0,0" Checked="CheckBox_Checked" Unchecked="CheckBox_UnChecked">
  80. </CheckBox>
  81. </DataTemplate>
  82. </GridViewColumn.CellTemplate>
  83. </GridViewColumn>
  84. <!--<GridViewColumn Header="Description" DisplayMemberBinding="{Binding Path=Description}"/>-->
  85. </GridView.Columns>
  86. </GridView>
  87. </ListView.View>
  88. </ListView>
  89. </StackPanel>
  90. <StackPanel Grid.Column="2" Orientation="Vertical">
  91. <TextBlock>AI</TextBlock>
  92. <ListView x:Name="AISource"></ListView>
  93. </StackPanel>
  94. <StackPanel Grid.Column="3" Orientation="Vertical">
  95. <TextBlock>AO</TextBlock>
  96. <ListView x:Name="AOSource"></ListView>
  97. </StackPanel>
  98. </Grid>
  99. </TabItem>
  100. <TabItem Header="LP"></TabItem>
  101. <TabItem Header="Robot"></TabItem>
  102. <TabItem Header="FSM"></TabItem>
  103. </TabControl>
  104. </Window>