RobotCycleView.xaml 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. <UserControl x:Class="PunkHPX8_MainPages.Views.RobotCycleView"
  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:PunkHPX8_MainPages.Views"
  7. xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity"
  8. xmlns:prism="http://prismlibrary.com/"
  9. xmlns:customControls="clr-namespace:PunkHPX8_Themes.CustomControls;assembly=PunkHPX8_Themes"
  10. xmlns:unity="clr-namespace:PunkHPX8_MainPages.Unity"
  11. xmlns:Converters="clr-namespace:PunkHPX8_Themes.Converters;assembly=PunkHPX8_Themes"
  12. prism:ViewModelLocator.AutoWireViewModel="True"
  13. mc:Ignorable="d"
  14. d:DesignHeight="1000" d:DesignWidth="2000">
  15. <Canvas>
  16. <Grid Margin="10">
  17. <Grid.RowDefinitions>
  18. <RowDefinition Height="Auto"/>
  19. <RowDefinition Height="*"/>
  20. <RowDefinition Height="Auto"/>
  21. </Grid.RowDefinitions>
  22. <!-- 位置列表(可重新排序) -->
  23. <GroupBox Grid.Row="0" Header="Robot Cycle List" Margin="0,0,0,10">
  24. <ListView x:Name="PositionListView" ItemsSource="{Binding Positions}">
  25. <ListView.View>
  26. <GridView>
  27. <GridViewColumn Header="ModuleType" Width="120" DisplayMemberBinding="{Binding ModuleType}"/>
  28. <GridViewColumn Header="ModuleName" Width="120" DisplayMemberBinding="{Binding ModuleName}"/>
  29. <GridViewColumn Header="Paramater" Width="120" DisplayMemberBinding="{Binding Parameter}"/>
  30. <GridViewColumn Header="RobotHand" Width="120" DisplayMemberBinding="{Binding RobotHand}"/>
  31. <GridViewColumn Header="Flip" Width="120" DisplayMemberBinding="{Binding RobotFlip}"/>
  32. <!-- 新增的操作按钮列 -->
  33. <GridViewColumn Header="Operation" Width="220">
  34. <GridViewColumn.CellTemplate>
  35. <DataTemplate>
  36. <StackPanel Orientation="Horizontal" Margin="2,0">
  37. <!-- 上移按钮 -->
  38. <Button Content="MoveUp"
  39. Command="{Binding DataContext.MoveUpCommand,
  40. RelativeSource={RelativeSource AncestorType=ListView}}"
  41. CommandParameter="{Binding}"
  42. Width="60" Margin="2,0"/>
  43. <Button Content="MoveDown"
  44. Command="{Binding DataContext.MoveDownCommand,
  45. RelativeSource={RelativeSource AncestorType=ListView}}"
  46. CommandParameter="{Binding}"
  47. Width="70" Margin="2,0"/>
  48. <Button Content="Delete"
  49. Command="{Binding DataContext.RemoveCommand,
  50. RelativeSource={RelativeSource AncestorType=ListView}}"
  51. CommandParameter="{Binding}"
  52. Width="60" Margin="2,0"
  53. Background="#FFE53935" Foreground="White"/>
  54. </StackPanel>
  55. </DataTemplate>
  56. </GridViewColumn.CellTemplate>
  57. </GridViewColumn>
  58. </GridView>
  59. </ListView.View>
  60. </ListView>
  61. </GroupBox>
  62. <!-- 添加新位置 -->
  63. <GroupBox Grid.Row="1" Header="Add Position" Margin="0,0,0,10">
  64. <Grid>
  65. <Grid.ColumnDefinitions>
  66. <ColumnDefinition Width="120"/>
  67. <ColumnDefinition Width="120"/>
  68. <ColumnDefinition Width="120"/>
  69. <ColumnDefinition Width="120"/>
  70. <ColumnDefinition Width="120"/>
  71. <ColumnDefinition Width="60"/>
  72. <ColumnDefinition Width="Auto"/>
  73. </Grid.ColumnDefinitions>
  74. <Grid.RowDefinitions>
  75. <RowDefinition Height="Auto"/>
  76. <RowDefinition Height="Auto"/>
  77. <RowDefinition Height="Auto"/>
  78. </Grid.RowDefinitions>
  79. <ComboBox Grid.Column="0" Grid.Row="0" Margin="5,5,5,5"
  80. ItemsSource="{Binding PositionTypes}"
  81. SelectedItem="{Binding SelectedPositionType}"/>
  82. <ComboBox Grid.Column="1" Grid.Row="0" Margin="5,5,5,5"
  83. ItemsSource="{Binding AvailableSelections}"
  84. SelectedItem="{Binding SelectedSelection}" />
  85. <TextBox Grid.Column="2" Grid.Row="0" Margin="5,5,5,5" IsEnabled="{Binding IsInputParameterEnable}"
  86. Text="{Binding Parameter,Mode=TwoWay}"/>
  87. <ComboBox Grid.Column="3" Grid.Row="0" Margin="5,5,5,5"
  88. ItemsSource="{Binding HandsTypes}"
  89. SelectedItem="{Binding RobotHand,Mode=TwoWay}"/>
  90. <ComboBox Grid.Column="4" Grid.Row="0" Margin="5,5,5,5"
  91. ItemsSource="{Binding FlipTypes}"
  92. SelectedItem="{Binding RobotFlip,Mode=TwoWay}"/>
  93. <Button Grid.Column="5" Grid.Row="0" Margin="5,5,5,5"
  94. Content="Add" Command="{Binding AddPositionCommand}"/>
  95. <TextBlock Grid.Column="0" Grid.Row="1" Text="Input CycleTimes:" Margin="5,5,5,5"/>
  96. <TextBox Grid.Column="1" Grid.Row="1" Margin="5,5,5,5" HorizontalAlignment="Center" Width="50" HorizontalContentAlignment="Center"
  97. Text="{Binding InPutCycleTimes,Mode=TwoWay}"/>
  98. <TextBlock Grid.Column="0" Grid.Row="2" Text="Current cycle:" Margin="5,5,5,5"/>
  99. <TextBlock Grid.Column="1" Grid.Row="2" Margin="5,5,5,5" HorizontalAlignment="Center"
  100. Text="{Binding CurrentCycle}"/>
  101. </Grid>
  102. </GroupBox>
  103. <!-- 控制按钮 -->
  104. <StackPanel Grid.Row="2" Orientation="Horizontal" HorizontalAlignment="Right">
  105. <Button Content="Start" Width="80" Height="30" Margin="5"
  106. Command="{Binding RobotCycleStartCommand}"/>
  107. <Button Content="Abort" Width="80" Height="30" Margin="5"
  108. Command="{Binding RobotCycleAbortCommand}"/>
  109. </StackPanel>
  110. </Grid>
  111. </Canvas>
  112. </UserControl>