BeckhoffIOView.xaml 9.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. <UserControl x:Class="CyberX8_MainPages.Views.BeckhoffIOView"
  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:CyberX8_MainPages.Views"
  7. xmlns:prism="http://prismlibrary.com/"
  8. xmlns:ctrl="http://OpenSEMI.Ctrlib.com/presentation"
  9. xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity"
  10. xmlns:toolkit="clr-namespace:Xceed.Wpf.Toolkit;assembly=Xceed.Wpf.Toolkit"
  11. xmlns:converters="clr-namespace:CyberX8_MainPages.Converters"
  12. prism:ViewModelLocator.AutoWireViewModel="True"
  13. mc:Ignorable="d"
  14. d:DesignHeight="450" d:DesignWidth="800">
  15. <UserControl.Resources>
  16. <converters:DisplayNameConverter x:Key="DisplayConverter" />
  17. </UserControl.Resources>
  18. <Grid ScrollViewer.HorizontalScrollBarVisibility="Disabled" ScrollViewer.VerticalScrollBarVisibility="Visible">
  19. <Grid.ColumnDefinitions>
  20. <ColumnDefinition Width="0.95*" />
  21. <ColumnDefinition Width="1.1*" />
  22. <ColumnDefinition Width="0.95*" />
  23. <ColumnDefinition Width="1.1*" />
  24. </Grid.ColumnDefinitions>
  25. <TabControl Grid.Column="0" Margin="5,0,0,0">
  26. <TabItem Header="DI">
  27. <ListView ItemsSource="{Binding Path=DIs}" AlternationCount="2" VerticalAlignment="Top" Name="DIListView">
  28. <ListView.View>
  29. <GridView>
  30. <GridViewColumn Width="370" Header="Name">
  31. <GridViewColumn.CellTemplate>
  32. <DataTemplate>
  33. <TextBlock Text="{Binding Name}" FontSize="12px"/>
  34. </DataTemplate>
  35. </GridViewColumn.CellTemplate>
  36. </GridViewColumn>
  37. <!--<GridViewColumn Width="70" Header="Address" DisplayMemberBinding="{Binding Path=Address}" />-->
  38. <GridViewColumn Width="40" Header="Value">
  39. <GridViewColumn.CellTemplate>
  40. <DataTemplate>
  41. <Grid Width="35">
  42. <ctrl:SwitchButton HorizontalAlignment="Center" ON="{Binding Value}" Style="{StaticResource Lamp-Button}"></ctrl:SwitchButton>
  43. </Grid>
  44. </DataTemplate>
  45. </GridViewColumn.CellTemplate>
  46. </GridViewColumn>
  47. </GridView>
  48. </ListView.View>
  49. </ListView>
  50. </TabItem>
  51. </TabControl>
  52. <TabControl Grid.Column="1" Margin="5,0,0,0">
  53. <TabItem Header="DO">
  54. <ListView ItemsSource="{Binding Path=DOs}" AlternationCount="2" VerticalAlignment="Top" Name="DOListView">
  55. <ListView.View>
  56. <GridView>
  57. <GridViewColumn Width="360" Header="Name">
  58. <GridViewColumn.CellTemplate>
  59. <DataTemplate>
  60. <TextBlock Text="{Binding Name}" FontSize="12px"/>
  61. </DataTemplate>
  62. </GridViewColumn.CellTemplate>
  63. </GridViewColumn>
  64. <!--<GridViewColumn Width="70" Header="Address" DisplayMemberBinding="{Binding Path=Address}" />-->
  65. <GridViewColumn Width="40" Header="Value">
  66. <GridViewColumn.CellTemplate>
  67. <DataTemplate>
  68. <Grid Width="35">
  69. <ctrl:SwitchButton HorizontalAlignment="Center" ON="{Binding Value}" Style="{StaticResource Lamp-Button}"></ctrl:SwitchButton>
  70. </Grid>
  71. </DataTemplate>
  72. </GridViewColumn.CellTemplate>
  73. </GridViewColumn>
  74. <GridViewColumn Width="65" Header="Set">
  75. <GridViewColumn.CellTemplate>
  76. <DataTemplate>
  77. <Grid Width="35">
  78. <!--<ctrl:SwitchButton ON="{Binding Value}" Style="{StaticResource OperationButton}" HorizontalAlignment="Center" >
  79. <i:Interaction.Triggers>
  80. <i:EventTrigger EventName="Click">
  81. <i:InvokeCommandAction Command="{Binding SetDOCommand}" CommandParameter="{Binding }"/>
  82. </i:EventTrigger>
  83. </i:Interaction.Triggers>
  84. </ctrl:SwitchButton>-->
  85. <Button Content="Set" Command="{Binding Path=DataContext.SetDOCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}" CommandParameter="{Binding }"/>
  86. </Grid>
  87. </DataTemplate>
  88. </GridViewColumn.CellTemplate>
  89. </GridViewColumn>
  90. </GridView>
  91. </ListView.View>
  92. </ListView>
  93. </TabItem>
  94. </TabControl>
  95. <TabControl Grid.Column="2" Margin="5,0,0,0">
  96. <TabItem Header="AI">
  97. <ListView ItemsSource="{Binding Path=AIs}" AlternationCount="2" Name="AIListView" VerticalAlignment="Top">
  98. <ListView.View>
  99. <GridView>
  100. <GridViewColumn Width="330" Header="Name">
  101. <GridViewColumn.CellTemplate>
  102. <DataTemplate>
  103. <TextBlock Text="{Binding Name}" FontSize="12px"/>
  104. </DataTemplate>
  105. </GridViewColumn.CellTemplate>
  106. </GridViewColumn>
  107. <!--<GridViewColumn Width="70" Header="Address" DisplayMemberBinding="{Binding Path=Address}" />-->
  108. <GridViewColumn Width="80" Header="Value" DisplayMemberBinding="{Binding Path=Value, StringFormat={}{0:F2}}" />
  109. </GridView>
  110. </ListView.View>
  111. </ListView>
  112. </TabItem>
  113. </TabControl>
  114. <TabControl Grid.Column="3" Margin="5,0,0,0">
  115. <TabItem Header="AO">
  116. <ListView ItemsSource="{Binding Path=AOs}" AlternationCount="2" VerticalAlignment="Top" Name="AOListView">
  117. <ListView.View>
  118. <GridView>
  119. <GridViewColumn Width="280" Header="Name">
  120. <GridViewColumn.CellTemplate>
  121. <DataTemplate>
  122. <TextBlock Text="{Binding Name}" FontSize="12px"/>
  123. </DataTemplate>
  124. </GridViewColumn.CellTemplate>
  125. </GridViewColumn>
  126. <!--<GridViewColumn Width="70" Header="Address" DisplayMemberBinding="{Binding Path=Address}" />-->
  127. <GridViewColumn Width="50" Header="Value" DisplayMemberBinding="{Binding Path=Value, StringFormat={}{0:F2}}" />
  128. <GridViewColumn Width="80" Header="New Value">
  129. <GridViewColumn.CellTemplate>
  130. <DataTemplate>
  131. <toolkit:DoubleUpDown Text="{Binding Path=NewValue,UpdateSourceTrigger=PropertyChanged}" Width="60" />
  132. </DataTemplate>
  133. </GridViewColumn.CellTemplate>
  134. </GridViewColumn>
  135. <GridViewColumn Width="65" Header="Operation">
  136. <GridViewColumn.CellTemplate>
  137. <DataTemplate>
  138. <Button Content="Set" Height="20" Width="35" Command="{Binding Path=DataContext.SetAOCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}" CommandParameter="{Binding }">
  139. <!--<i:Interaction.Triggers>
  140. <i:EventTrigger EventName="Click">
  141. <cal:ActionMessage MethodName="SetAO">
  142. <cal:Parameter Value="{Binding }" />
  143. </cal:ActionMessage>
  144. </i:EventTrigger>
  145. </i:Interaction.Triggers>-->
  146. </Button>
  147. </DataTemplate>
  148. </GridViewColumn.CellTemplate>
  149. </GridViewColumn>
  150. </GridView>
  151. </ListView.View>
  152. </ListView>
  153. </TabItem>
  154. </TabControl>
  155. </Grid>
  156. </UserControl>