TorqueCheck.xaml 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367
  1. <UserControl x:Class="TeamAAS_VP.Views.Home.TorqueCheck"
  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:TeamAAS_VP.Views.Home"
  7. mc:Ignorable="d"
  8. xmlns:prism="http://prismlibrary.com/"
  9. xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
  10. xmlns:b="http://schemas.microsoft.com/xaml/behaviors"
  11. xmlns:sys="clr-namespace:System;assembly=mscorlib"
  12. xmlns:enums="clr-namespace:TeamAAS_VP.Enums"
  13. xmlns:uControl="clr-namespace:TeamAAS_VP.Controls"
  14. xmlns:convert="clr-namespace:TeamAAS_VP.ValueConverter"
  15. xmlns:valRules="clr-namespace:TeamAAS_VP.Identity"
  16. xmlns:validationRule="clr-namespace:TeamAAS_VP.ValidationRules"
  17. xmlns:ext="clr-namespace:TeamAAS_VP.Extension"
  18. xmlns:lex="http://wpflocalizeextension.codeplex.com"
  19. xmlns:vm="clr-namespace:TeamAAS_VP.ViewModels.Home"
  20. lex:LocalizeDictionary.DesignCulture="zh-CN"
  21. lex:ResxLocalizationProvider.DefaultAssembly="TeamAAS-VP"
  22. lex:ResxLocalizationProvider.DefaultDictionary="Lang"
  23. d:Background="White"
  24. d:DataContext="{d:DesignInstance Type=vm:TorqueCheckViewModel}"
  25. prism:ViewModelLocator.AutoWireViewModel="True"
  26. FontFamily="{DynamicResource DefaultFont}">
  27. <b:Interaction.Triggers>
  28. <b:EventTrigger EventName="Loaded">
  29. <b:InvokeCommandAction Command="{Binding LoadedCommand}" />
  30. </b:EventTrigger>
  31. </b:Interaction.Triggers>
  32. <UserControl.Resources>
  33. <convert:JogConverter x:Key="JogConverter" />
  34. </UserControl.Resources>
  35. <prism:Dialog.WindowStyle>
  36. <Style TargetType="Window">
  37. <Setter Property="prism:Dialog.WindowStartupLocation"
  38. Value="CenterScreen" />
  39. <!--<Setter Property="WindowChrome.WindowChrome">
  40. <Setter.Value>
  41. <WindowChrome CaptionHeight="0"
  42. ResizeBorderThickness="1" />
  43. </Setter.Value>
  44. </Setter>-->
  45. <Setter Property="WindowStyle"
  46. Value="None" />
  47. <Setter Property="AllowDrop"
  48. Value="True" />
  49. <Setter Property="BorderThickness"
  50. Value="0" />
  51. <Setter Property="ShowInTaskbar"
  52. Value="False" />
  53. <Setter Property="SizeToContent"
  54. Value="WidthAndHeight" />
  55. <Setter Property="WindowState"
  56. Value="Normal" />
  57. <Setter Property="Topmost"
  58. Value="True" />
  59. </Style>
  60. </prism:Dialog.WindowStyle>
  61. <Grid HorizontalAlignment="Center">
  62. <Grid.ColumnDefinitions>
  63. <ColumnDefinition />
  64. <ColumnDefinition />
  65. </Grid.ColumnDefinitions>
  66. <materialDesign:DrawerHost Grid.Column="0"
  67. OpenMode="Standard"
  68. x:Name="DrawerHost"
  69. IsLeftDrawerOpen="{Binding IsLeftDrawerOpen,Mode=TwoWay}"
  70. d:IsLeftDrawerOpen="true"
  71. IsEnabled="{Binding IsAllowEdit}">
  72. <materialDesign:DrawerHost.LeftDrawerContent>
  73. <Grid Width="auto">
  74. <Grid.RowDefinitions>
  75. <RowDefinition Height="*" />
  76. <RowDefinition Height="*" />
  77. <RowDefinition Height="*" />
  78. </Grid.RowDefinitions>
  79. <StackPanel Orientation="Horizontal"
  80. HorizontalAlignment="Center"
  81. VerticalAlignment="Center"
  82. Margin="5">
  83. <Button Content="{lex:Loc 上使能}"
  84. materialDesign:ButtonAssist.CornerRadius="10"
  85. Style="{StaticResource MaterialDesignRaisedDarkButton}"
  86. Command="{Binding DataContext.MotorCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}"
  87. CommandParameter="True"
  88. Margin="10,0" />
  89. <Button Content="{lex:Loc 下使能}"
  90. Margin="10,0"
  91. materialDesign:ButtonAssist.CornerRadius="10"
  92. Style="{StaticResource MaterialDesignRaisedDarkButton}"
  93. Command="{Binding DataContext.MotorCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}"
  94. CommandParameter="False" />
  95. </StackPanel>
  96. <Grid Grid.Row="1">
  97. <Grid.ColumnDefinitions>
  98. <ColumnDefinition Width="auto" />
  99. <ColumnDefinition Width="auto" />
  100. <ColumnDefinition Width="auto" />
  101. <ColumnDefinition Width="auto" />
  102. </Grid.ColumnDefinitions>
  103. <Grid.RowDefinitions>
  104. <RowDefinition Height="auto" />
  105. <RowDefinition Height="auto" />
  106. <RowDefinition Height="auto" />
  107. </Grid.RowDefinitions>
  108. <Grid.Resources>
  109. <Style TargetType="Button"
  110. BasedOn="{StaticResource MaterialDesignRaisedDarkButton}">
  111. <Setter Property="Width"
  112. Value="60" />
  113. <Setter Property="Height"
  114. Value="60" />
  115. <Setter Property="FontSize"
  116. Value="13" />
  117. <Setter Property="Padding"
  118. Value="0" />
  119. <Setter Property="HorizontalAlignment"
  120. Value="Center" />
  121. <Setter Property="VerticalAlignment"
  122. Value="Center" />
  123. <Setter Property="Margin"
  124. Value="2" />
  125. <Setter Property="materialDesign:ButtonAssist.CornerRadius"
  126. Value="10" />
  127. </Style>
  128. </Grid.Resources>
  129. <Button Grid.Row="1"
  130. Grid.Column="0"
  131. Command="{Binding DataContext.JogCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}"
  132. CommandParameter="{Binding ElementName=txtDistance,Path=Value,Converter={StaticResource JogConverter}, ConverterParameter=X-}">
  133. <StackPanel Orientation="Vertical">
  134. <materialDesign:PackIcon Kind="ArrowLeftBold"
  135. Width="26"
  136. Height="26" />
  137. <TextBlock Text="-X"
  138. HorizontalAlignment="Center" />
  139. </StackPanel>
  140. </Button>
  141. <Button Grid.Row="1"
  142. Grid.Column="2"
  143. Command="{Binding DataContext.JogCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}"
  144. CommandParameter="{Binding ElementName=txtDistance,Path=Value,Converter={StaticResource JogConverter}, ConverterParameter=X+}">
  145. <StackPanel Orientation="Vertical">
  146. <materialDesign:PackIcon Kind="ArrowRightBold"
  147. Width="26"
  148. Height="26" />
  149. <TextBlock Text="+X"
  150. HorizontalAlignment="Center" />
  151. </StackPanel>
  152. </Button>
  153. <Button Grid.Row="0"
  154. Grid.Column="1"
  155. Command="{Binding DataContext.JogCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}"
  156. CommandParameter="{Binding ElementName=txtDistance,Path=Value,Converter={StaticResource JogConverter}, ConverterParameter=Y+}">
  157. <StackPanel Orientation="Vertical">
  158. <materialDesign:PackIcon Kind="ArrowTopBold"
  159. Width="26"
  160. Height="26" />
  161. <TextBlock Text="+Y"
  162. HorizontalAlignment="Center" />
  163. </StackPanel>
  164. </Button>
  165. <Button Grid.Row="2"
  166. Grid.Column="1"
  167. Command="{Binding DataContext.JogCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}"
  168. CommandParameter="{Binding ElementName=txtDistance,Path=Value,Converter={StaticResource JogConverter}, ConverterParameter=Y-}">
  169. <StackPanel Orientation="Vertical">
  170. <materialDesign:PackIcon Kind="ArrowBottomBold"
  171. Width="26"
  172. Height="26" />
  173. <TextBlock Text="-Y"
  174. HorizontalAlignment="Center" />
  175. </StackPanel>
  176. </Button>
  177. <Button Grid.Row="0"
  178. Grid.Column="3"
  179. Command="{Binding DataContext.JogCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}"
  180. CommandParameter="{Binding ElementName=txtDistance,Path=Value,Converter={StaticResource JogConverter}, ConverterParameter=Z+}">
  181. <StackPanel Orientation="Vertical">
  182. <materialDesign:PackIcon Kind="ArrowTopBold"
  183. Width="26"
  184. Height="26" />
  185. <TextBlock Text="+Z"
  186. HorizontalAlignment="Center" />
  187. </StackPanel>
  188. </Button>
  189. <Button Grid.Row="2"
  190. Grid.Column="3"
  191. Command="{Binding DataContext.JogCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}"
  192. CommandParameter="{Binding ElementName=txtDistance,Path=Value,Converter={StaticResource JogConverter}, ConverterParameter=Z-}">
  193. <StackPanel Orientation="Vertical">
  194. <materialDesign:PackIcon Kind="ArrowBottomBold"
  195. Width="26"
  196. Height="26" />
  197. <TextBlock Text="-Z"
  198. HorizontalAlignment="Center" />
  199. </StackPanel>
  200. </Button>
  201. </Grid>
  202. <Grid Grid.Row="2">
  203. <Grid.RowDefinitions>
  204. <RowDefinition />
  205. <RowDefinition />
  206. <RowDefinition />
  207. </Grid.RowDefinitions>
  208. <Grid.ColumnDefinitions>
  209. <ColumnDefinition />
  210. <ColumnDefinition />
  211. </Grid.ColumnDefinitions>
  212. <TextBlock VerticalAlignment="Center"
  213. Margin="5"
  214. Grid.ColumnSpan="2">
  215. <TextBlock.Text>
  216. <MultiBinding StringFormat="{}CurPos X: {0:F3} mm Y: {1:F3} mm Z: {2:F3} mm">
  217. <Binding Path="Robot.CurrentPosition.X" />
  218. <Binding Path="Robot.CurrentPosition.Y" />
  219. <Binding Path="Robot.CurrentPosition.Z" />
  220. </MultiBinding>
  221. </TextBlock.Text>
  222. </TextBlock>
  223. <TextBlock Grid.Row="1"
  224. Grid.Column="0"
  225. Text="{lex:Loc 步进距离,Converter={StaticResource StringFormatConverter},ConverterParameter='{}{0}: '}"
  226. Margin="10"
  227. VerticalAlignment="Center"
  228. HorizontalAlignment="Right" />
  229. <uControl:myNumericUpDowm x:Name="txtDistance"
  230. Grid.Row="1"
  231. Grid.Column="1"
  232. MinWidth="100"
  233. Value="{Binding DataContext.Distance,RelativeSource={RelativeSource AncestorType={x:Type UserControl}},Mode=TwoWay}"
  234. Interval="0.1"
  235. Minimum="0"
  236. Maximum="100"
  237. StringFormat="{}{0:N3} mm"
  238. Margin="10"
  239. materialDesign:HintAssist.Hint="{lex:Loc 步进距离}" />
  240. <Button Grid.Row="2"
  241. Grid.ColumnSpan="2"
  242. Content="{lex:Loc 示教}"
  243. Margin="0,10"
  244. HorizontalAlignment="Center"
  245. materialDesign:ButtonAssist.CornerRadius="10"
  246. Style="{StaticResource MaterialDesignRaisedDarkButton}"
  247. Command="{Binding DataContext.TechPointCommand}" />
  248. </Grid>
  249. </Grid>
  250. </materialDesign:DrawerHost.LeftDrawerContent>
  251. <Grid Grid.Column="1">
  252. <Grid.RowDefinitions>
  253. <RowDefinition Height="auto" />
  254. <RowDefinition />
  255. <RowDefinition />
  256. <RowDefinition Height="auto" />
  257. <RowDefinition />
  258. <RowDefinition Height="auto" />
  259. </Grid.RowDefinitions>
  260. <ToggleButton HorizontalAlignment="Left"
  261. VerticalAlignment="Top"
  262. materialDesign:ToggleButtonAssist.OnContent="{materialDesign:PackIcon Kind=ArrowLeft}"
  263. Content="{materialDesign:PackIcon Kind=ArrowAll}"
  264. Style="{StaticResource MaterialDesignActionToggleButton}"
  265. ToolTip="轴操作"
  266. Margin="5,0"
  267. IsChecked="{Binding IsLeftDrawerOpen,ElementName=DrawerHost}" />
  268. <StackPanel Orientation="Horizontal"
  269. HorizontalAlignment="Left"
  270. VerticalAlignment="Center"
  271. Grid.Row="1"
  272. Margin="5,2">
  273. <TextBlock Text="{lex:Loc 扭力阈值}"
  274. VerticalAlignment="Center"
  275. Margin="5,2" />
  276. <TextBox Text="{Binding torqueValue}"
  277. VerticalAlignment="Center"
  278. HorizontalAlignment="Center"
  279. Width="80"
  280. Margin="5,2" />
  281. <Button Content="{lex:Loc 修改}"
  282. Margin="15,2"
  283. HorizontalAlignment="Center"
  284. materialDesign:ButtonAssist.CornerRadius="10"
  285. Style="{StaticResource MaterialDesignRaisedDarkButton}"
  286. Command="{Binding ModifyCommand}" />
  287. </StackPanel>
  288. <Grid Grid.Row="2">
  289. <Grid.ColumnDefinitions>
  290. <ColumnDefinition Width="auto" />
  291. <ColumnDefinition />
  292. </Grid.ColumnDefinitions>
  293. <StackPanel Orientation="Vertical"
  294. HorizontalAlignment="Left"
  295. VerticalAlignment="Center"
  296. Margin="5,2">
  297. <TextBlock Text="{lex:Loc 扭力测量仪值}"
  298. Margin="5,3,10,3" />
  299. <TextBlock Text="{lex:Loc 电批测量值}"
  300. Margin="5,3,10,3" />
  301. <TextBlock Text="{lex:Loc 差值}"
  302. Margin="5,3,10,3" />
  303. </StackPanel>
  304. <StackPanel Orientation="Vertical"
  305. HorizontalAlignment="Left"
  306. VerticalAlignment="Center"
  307. Margin="2"
  308. Grid.Column="1">
  309. <TextBlock Text="{Binding TValue}"
  310. Margin="3" />
  311. <TextBlock Text="{Binding PValue}"
  312. Margin="3" />
  313. <TextBlock Text="{Binding SubValue}"
  314. Margin="3" />
  315. </StackPanel>
  316. </Grid>
  317. <Button Content="{lex:Loc 执行}"
  318. VerticalContentAlignment="Center"
  319. materialDesign:ButtonAssist.CornerRadius="10"
  320. Style="{StaticResource MaterialDesignRaisedDarkButton}"
  321. Command="{Binding WorkCommand}"
  322. Margin="10,5"
  323. Grid.Row="3"/>
  324. <TextBlock Text="{Binding Result}"
  325. HorizontalAlignment="Center"
  326. VerticalAlignment="Center"
  327. Grid.Row="4"
  328. FontSize="30"
  329. Foreground="{Binding FontColor}" />
  330. <StackPanel Orientation="Horizontal"
  331. Margin="10,3"
  332. HorizontalAlignment="Right"
  333. Grid.Row="5">
  334. <Button Content="{lex:Loc 确定}"
  335. VerticalContentAlignment="Center"
  336. materialDesign:ButtonAssist.CornerRadius="10"
  337. Style="{StaticResource MaterialDesignRaisedDarkButton}"
  338. Command="{Binding ConfirmCommand}"
  339. Margin="10,3" />
  340. <Button Content="{lex:Loc 取消}"
  341. VerticalContentAlignment="Center"
  342. materialDesign:ButtonAssist.CornerRadius="10"
  343. Style="{StaticResource MaterialDesignRaisedDarkButton}"
  344. Command="{Binding CancelCommand}"
  345. Margin="10,3" />
  346. </StackPanel>
  347. </Grid>
  348. </materialDesign:DrawerHost>
  349. </Grid>
  350. </UserControl>