PlcPointParams.xaml 132 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809
  1. <UserControl x:Class="TeamAAS_VP.Views.Product.PlcPointParams"
  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. xmlns:prism="http://prismlibrary.com/"
  5. xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
  6. xmlns:b="http://schemas.microsoft.com/xaml/behaviors"
  7. xmlns:sys="clr-namespace:System;assembly=mscorlib"
  8. xmlns:mah="http://metro.mahapps.com/winfx/xaml/controls"
  9. xmlns:enums="clr-namespace:TeamAAS_VP.Enums"
  10. xmlns:uControl="clr-namespace:TeamAAS_VP.Controls"
  11. xmlns:convert="clr-namespace:TeamAAS_VP.ValueConverter"
  12. xmlns:local="clr-namespace:TeamAAS_VP.Views.Product"
  13. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  14. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  15. xmlns:vm="clr-namespace:TeamAAS_VP.ViewModels.Product"
  16. xmlns:ext="clr-namespace:TeamAAS_VP.Extension"
  17. xmlns:lex="http://wpflocalizeextension.codeplex.com"
  18. xmlns:localRobot="clr-namespace:TeamAAS_VP.Models.Robot"
  19. lex:LocalizeDictionary.DesignCulture="zh-CN"
  20. lex:ResxLocalizationProvider.DefaultAssembly="TeamAAS-VP"
  21. lex:ResxLocalizationProvider.DefaultDictionary="Lang"
  22. prism:ViewModelLocator.AutoWireViewModel="True"
  23. mc:Ignorable="d"
  24. d:DataContext="{d:DesignInstance Type=vm:PlcPointParamsViewModel}"
  25. d:Height="600"
  26. d:Width="1024"
  27. d:Background="White"
  28. FontFamily="{DynamicResource DefaultFont}">
  29. <b:Interaction.Triggers>
  30. <b:EventTrigger EventName="Loaded">
  31. <b:InvokeCommandAction Command="{Binding LoadedCommand}" />
  32. </b:EventTrigger>
  33. </b:Interaction.Triggers>
  34. <UserControl.Resources>
  35. <ObjectDataProvider x:Key="eRobotHand"
  36. MethodName="GetValues"
  37. ObjectType="{x:Type sys:Enum}">
  38. <ObjectDataProvider.MethodParameters>
  39. <x:Type TypeName="enums:RobotHand" />
  40. </ObjectDataProvider.MethodParameters>
  41. </ObjectDataProvider>
  42. <ObjectDataProvider x:Key="eMotionCommand"
  43. MethodName="GetValues"
  44. ObjectType="{x:Type sys:Enum}">
  45. <ObjectDataProvider.MethodParameters>
  46. <x:Type TypeName="enums:MotionCommand" />
  47. </ObjectDataProvider.MethodParameters>
  48. </ObjectDataProvider>
  49. <convert:JogConverter x:Key="JogConverter" />
  50. <convert:MultiParameterConverter x:Key="MultiParameterConverter" />
  51. <convert:RobotConverter x:Key="RobotConverter" />
  52. </UserControl.Resources>
  53. <Grid>
  54. <Grid.RowDefinitions>
  55. <RowDefinition Height="auto" />
  56. <RowDefinition Height="*" />
  57. <RowDefinition Height="auto" />
  58. </Grid.RowDefinitions>
  59. <Button Grid.Row="0"
  60. Content="{materialDesign:PackIcon Kind=ArrowLeftCircle}"
  61. Width="50"
  62. HorizontalAlignment="Left"
  63. VerticalAlignment="Top"
  64. ToolTip="{lex:Loc 返回}"
  65. Style="{StaticResource MaterialDesignIconButton}"
  66. Command="{Binding BackCommand}" />
  67. <StackPanel Grid.Row="0"
  68. Orientation="Horizontal"
  69. Margin="50,0"
  70. VerticalAlignment="Center">
  71. <materialDesign:PackIcon Kind="CubeOutline"
  72. Width="30"
  73. Height="30" />
  74. <TextBlock Text="{Binding SelectProduct.Name}"
  75. VerticalAlignment="Center" />
  76. <TextBlock Text="{lex:Loc 机器人点位,Converter={StaticResource StringFormatConverter},ConverterParameter=' - {0}'}"
  77. VerticalAlignment="Center" />
  78. </StackPanel>
  79. <Border BorderThickness="1,1,1,1"
  80. VerticalAlignment="Bottom"
  81. Height="1">
  82. <Border.BorderBrush>
  83. <VisualBrush>
  84. <VisualBrush.Visual>
  85. <Rectangle StrokeDashArray="4 4"
  86. Stroke="LightGray"
  87. StrokeThickness="1"
  88. Width="{Binding RelativeSource={RelativeSource AncestorType={x:Type Border}}, Path=ActualWidth}"
  89. Height="{Binding RelativeSource={RelativeSource AncestorType={x:Type Border}}, Path=ActualHeight}" />
  90. </VisualBrush.Visual>
  91. </VisualBrush>
  92. </Border.BorderBrush>
  93. </Border>
  94. <materialDesign:DrawerHost Grid.Row="1"
  95. OpenMode="Modal"
  96. x:Name="DrawerHost"
  97. IsEnabled="{Binding IsAllowEdit}">
  98. <!--<materialDesign:DrawerHost.RightDrawerContent>
  99. <local:TestProductPage Visibility="{Binding IsHaveRobot,Converter={StaticResource BooleanToVisibilityConverter}}" />
  100. </materialDesign:DrawerHost.RightDrawerContent>-->
  101. <Grid>
  102. <Grid.ColumnDefinitions>
  103. <ColumnDefinition Width="auto" />
  104. <ColumnDefinition Width="*" />
  105. </Grid.ColumnDefinitions>
  106. <Expander Grid.Column="0"
  107. ExpandDirection="Right"
  108. Background="Transparent">
  109. <Expander.Header>
  110. <TextBlock RenderTransformOrigin=".5,.5"
  111. Text="Navigation Description">
  112. <TextBlock.LayoutTransform>
  113. <RotateTransform Angle="90" />
  114. </TextBlock.LayoutTransform>
  115. </TextBlock>
  116. </Expander.Header>
  117. <ScrollViewer>
  118. <StackPanel Margin="8,24,16,24"
  119. Orientation="Vertical">
  120. <Image Source="pack://application:,,,/TeamAAS-VP;component/Resources/Images/9机器人点位.png"
  121. Stretch="Uniform"
  122. Width="350"
  123. HorizontalAlignment="Center"
  124. VerticalAlignment="Top" />
  125. <TextBlock Text="{lex:Loc 机器人点位示教}" />
  126. <TextBlock Foreground="Gray"
  127. TextWrapping="Wrap"
  128. Text="{lex:Loc 机器人点位示教描述}" />
  129. </StackPanel>
  130. </ScrollViewer>
  131. </Expander>
  132. <Grid Grid.Column="1">
  133. <Grid.ColumnDefinitions>
  134. <ColumnDefinition Width="*" />
  135. <ColumnDefinition Width="auto" />
  136. </Grid.ColumnDefinitions>
  137. <DockPanel Grid.Column="0">
  138. <!--选项列表-->
  139. <ListBox Height="80"
  140. DockPanel.Dock="Top"
  141. SelectedIndex="{Binding SelectedIndex}"
  142. Style="{StaticResource MaterialDesign3.NavigationBarPrimaryListBox}">
  143. <b:Interaction.Triggers>
  144. <b:EventTrigger EventName="SelectionChanged">
  145. <b:InvokeCommandAction Command="{Binding SelectionChangedCommand}" />
  146. </b:EventTrigger>
  147. </b:Interaction.Triggers>
  148. <ListBoxItem>
  149. <ListBoxItem.Style>
  150. <Style TargetType="ListBoxItem"
  151. BasedOn="{StaticResource MaterialDesign3.NavigationBarPrimaryListBoxItem}">
  152. <Setter Property="materialDesign:NavigationBarAssist.SelectedIcon"
  153. Value="Circle" />
  154. <Setter Property="materialDesign:NavigationBarAssist.UnselectedIcon"
  155. Value="CircleOutline" />
  156. </Style>
  157. </ListBoxItem.Style>
  158. <TextBlock Text="取料拍照点位" />
  159. </ListBoxItem>
  160. <ListBoxItem>
  161. <ListBoxItem.Style>
  162. <Style TargetType="ListBoxItem"
  163. BasedOn="{StaticResource MaterialDesign3.NavigationBarPrimaryListBoxItem}">
  164. <Setter Property="materialDesign:NavigationBarAssist.SelectedIcon"
  165. Value="Circle" />
  166. <Setter Property="materialDesign:NavigationBarAssist.UnselectedIcon"
  167. Value="CircleOutline" />
  168. </Style>
  169. </ListBoxItem.Style>
  170. <TextBlock Text="取料点位" />
  171. </ListBoxItem>
  172. <ListBoxItem>
  173. <ListBoxItem.Style>
  174. <Style TargetType="ListBoxItem"
  175. BasedOn="{StaticResource MaterialDesign3.NavigationBarPrimaryListBoxItem}">
  176. <Setter Property="materialDesign:NavigationBarAssist.SelectedIcon"
  177. Value="Circle" />
  178. <Setter Property="materialDesign:NavigationBarAssist.UnselectedIcon"
  179. Value="CircleOutline" />
  180. </Style>
  181. </ListBoxItem.Style>
  182. <TextBlock Text="下相机二次定位点位" />
  183. </ListBoxItem>
  184. <ListBoxItem>
  185. <ListBoxItem.Style>
  186. <Style TargetType="ListBoxItem"
  187. BasedOn="{StaticResource MaterialDesign3.NavigationBarPrimaryListBoxItem}">
  188. <Setter Property="materialDesign:NavigationBarAssist.SelectedIcon"
  189. Value="Circle" />
  190. <Setter Property="materialDesign:NavigationBarAssist.UnselectedIcon"
  191. Value="CircleOutline" />
  192. </Style>
  193. </ListBoxItem.Style>
  194. <TextBlock Text="锁附拍照点位" />
  195. </ListBoxItem>
  196. <ListBoxItem>
  197. <ListBoxItem.Style>
  198. <Style TargetType="ListBoxItem"
  199. BasedOn="{StaticResource MaterialDesign3.NavigationBarPrimaryListBoxItem}">
  200. <Setter Property="materialDesign:NavigationBarAssist.SelectedIcon"
  201. Value="Circle" />
  202. <Setter Property="materialDesign:NavigationBarAssist.UnselectedIcon"
  203. Value="CircleOutline" />
  204. </Style>
  205. </ListBoxItem.Style>
  206. <TextBlock Text="锁附点位" />
  207. </ListBoxItem>
  208. <ListBoxItem>
  209. <ListBoxItem.Style>
  210. <Style TargetType="ListBoxItem"
  211. BasedOn="{StaticResource MaterialDesign3.NavigationBarPrimaryListBoxItem}">
  212. <Setter Property="materialDesign:NavigationBarAssist.SelectedIcon"
  213. Value="Circle" />
  214. <Setter Property="materialDesign:NavigationBarAssist.UnselectedIcon"
  215. Value="CircleOutline" />
  216. </Style>
  217. </ListBoxItem.Style>
  218. <TextBlock Text="复检点位" />
  219. </ListBoxItem>
  220. <ListBoxItem>
  221. <ListBoxItem.Style>
  222. <Style TargetType="ListBoxItem"
  223. BasedOn="{StaticResource MaterialDesign3.NavigationBarPrimaryListBoxItem}">
  224. <Setter Property="materialDesign:NavigationBarAssist.SelectedIcon"
  225. Value="Circle" />
  226. <Setter Property="materialDesign:NavigationBarAssist.UnselectedIcon"
  227. Value="CircleOutline" />
  228. </Style>
  229. </ListBoxItem.Style>
  230. <TextBlock Text="AOI点位" />
  231. </ListBoxItem>
  232. </ListBox>
  233. <!--点位列表操作按钮面板-->
  234. <StackPanel DockPanel.Dock="Bottom"
  235. Orientation="Horizontal">
  236. <Button Content="添加点"
  237. Margin="5,2"
  238. MinWidth="80"
  239. materialDesign:ButtonAssist.CornerRadius="5"
  240. Command="{Binding AddPointCommand}" />
  241. <Button Content="删除点"
  242. Margin="5,2"
  243. MinWidth="80"
  244. materialDesign:ButtonAssist.CornerRadius="5"
  245. Command="{Binding DeletePointCommand}" />
  246. <Button Content="上移"
  247. Margin="5,2"
  248. MinWidth="80"
  249. materialDesign:ButtonAssist.CornerRadius="5"
  250. Command="{Binding MovePointUpCommand}" />
  251. <Button Content="下移"
  252. Margin="5,2"
  253. MinWidth="80"
  254. materialDesign:ButtonAssist.CornerRadius="5"
  255. Command="{Binding MovePointDownCommand}" />
  256. <Button Content="CAD导入点位"
  257. Margin="5,2"
  258. MinWidth="80"
  259. d:Visibility="Visible"
  260. materialDesign:ButtonAssist.CornerRadius="5"
  261. Command="{Binding ImportCadPointCommand}">
  262. <Button.Style>
  263. <Style TargetType="Button"
  264. BasedOn="{StaticResource MaterialDesignRaisedDarkButton}">
  265. <Setter Property="Visibility"
  266. Value="Collapsed" />
  267. <Style.Triggers>
  268. <!-- 当 SelectedIndex == 0 时显示此面板 -->
  269. <DataTrigger Binding="{Binding SelectedIndex}"
  270. Value="4">
  271. <Setter Property="Visibility"
  272. Value="Visible" />
  273. </DataTrigger>
  274. </Style.Triggers>
  275. </Style>
  276. </Button.Style>
  277. </Button>
  278. </StackPanel>
  279. <Border BorderBrush="LightGray"
  280. BorderThickness="1"
  281. Height="1"
  282. DockPanel.Dock="Bottom" />
  283. <DockPanel>
  284. <!--不同点位类型的操作面板-->
  285. <StackPanel DockPanel.Dock="Bottom"
  286. Orientation="Vertical">
  287. <!--取料拍照点位面板-->
  288. <StackPanel x:Name="AutoCorrectPickPointPanel"
  289. Orientation="Vertical"
  290. d:Visibility="Visible">
  291. <StackPanel.Style>
  292. <Style TargetType="StackPanel">
  293. <Setter Property="Visibility"
  294. Value="Collapsed" />
  295. <Style.Triggers>
  296. <!-- 当 SelectedIndex == 0 时显示此面板 -->
  297. <DataTrigger Binding="{Binding SelectedIndex}"
  298. Value="0">
  299. <Setter Property="Visibility"
  300. Value="Visible" />
  301. </DataTrigger>
  302. </Style.Triggers>
  303. </Style>
  304. </StackPanel.Style>
  305. <StackPanel Orientation="Horizontal">
  306. <ToggleButton x:Name="btn_AutoCorrectPickPoint"
  307. d:IsChecked="True"
  308. Style="{StaticResource MaterialDesignSwitchToggleButton}">
  309. <materialDesign:PackIcon Kind="Pin"
  310. RenderTransformOrigin=".5,.5">
  311. <materialDesign:PackIcon.RenderTransform>
  312. <RotateTransform Angle="45" />
  313. </materialDesign:PackIcon.RenderTransform>
  314. </materialDesign:PackIcon>
  315. <materialDesign:ToggleButtonAssist.OnContent>
  316. <materialDesign:PackIcon Kind="Pin" />
  317. </materialDesign:ToggleButtonAssist.OnContent>
  318. </ToggleButton>
  319. <TextBlock Text="通过相机自动矫正取料点位"
  320. FontWeight="Bold"
  321. Margin="0,10,0,5" />
  322. </StackPanel>
  323. <ScrollViewer HorizontalScrollBarVisibility="Auto"
  324. VerticalScrollBarVisibility="Disabled">
  325. <StackPanel Orientation="Horizontal"
  326. HorizontalAlignment="Left"
  327. Visibility="{Binding ElementName=btn_AutoCorrectPickPoint,Path=IsChecked, Converter={StaticResource BooleanToVisibilityConverter}}">
  328. <TextBlock Text="选择拍照点:"
  329. VerticalAlignment="Center" />
  330. <ComboBox MinWidth="50"
  331. Margin="5,0,0,0"
  332. ItemsSource="{Binding Points}"
  333. SelectedItem="{Binding SelectedCameraForPickPoint}">
  334. <ComboBox.ItemTemplate>
  335. <DataTemplate>
  336. <StackPanel HorizontalAlignment="Left"
  337. Orientation="Horizontal">
  338. <TextBlock Text="{Binding Number,StringFormat={}{0}:}" />
  339. <TextBlock Text="{Binding Label}" />
  340. </StackPanel>
  341. </DataTemplate>
  342. </ComboBox.ItemTemplate>
  343. </ComboBox>
  344. <TextBlock Margin="5,0,0,0"
  345. VerticalAlignment="Center"
  346. Text="选择移动视觉流程:" />
  347. <ComboBox MinWidth="50"
  348. Margin="5,0,0,0"
  349. ItemsSource="{Binding ProcedureModels}"
  350. SelectedItem="{Binding SelectProcedure}">
  351. <ComboBox.ItemTemplate>
  352. <DataTemplate>
  353. <StackPanel Orientation="Horizontal">
  354. <materialDesign:PackIcon Kind="VideoOutline" />
  355. <TextBlock Text="{Binding CameraName}"
  356. Margin="6,0" />
  357. <materialDesign:PackIcon Kind="ProgressWrench" />
  358. <TextBlock Text="{Binding Name}"
  359. Margin="6,0" />
  360. </StackPanel>
  361. </DataTemplate>
  362. </ComboBox.ItemTemplate>
  363. </ComboBox>
  364. <TextBlock Margin="5,0,0,0"
  365. VerticalAlignment="Center"
  366. Text="选择要校准的取料位:" />
  367. <ComboBox MinWidth="50"
  368. Margin="5,0,0,0"
  369. ItemsSource="{Binding PickPoints}"
  370. SelectedItem="{Binding SelectedPickPoint}">
  371. <ComboBox.ItemTemplate>
  372. <DataTemplate>
  373. <StackPanel HorizontalAlignment="Left"
  374. Orientation="Horizontal">
  375. <TextBlock Text="{Binding Number,StringFormat={}{0}:}" />
  376. <TextBlock Text="{Binding Label}" />
  377. </StackPanel>
  378. </DataTemplate>
  379. </ComboBox.ItemTemplate>
  380. </ComboBox>
  381. <Button Content="执行校准"
  382. Margin="10,0,0,0"
  383. materialDesign:ButtonAssist.CornerRadius="5"
  384. Command="{Binding AutoCorrectPickPointCommand}" />
  385. </StackPanel>
  386. </ScrollViewer>
  387. </StackPanel>
  388. <!--锁付拍照面板-->
  389. <StackPanel x:Name="LockCameraPanel"
  390. Orientation="Vertical"
  391. d:Visibility="Visible">
  392. <StackPanel.Style>
  393. <Style TargetType="StackPanel">
  394. <Setter Property="Visibility"
  395. Value="Collapsed" />
  396. <Style.Triggers>
  397. <!-- 当 SelectedIndex == 4 时显示此面板 -->
  398. <DataTrigger Binding="{Binding SelectedIndex}"
  399. Value="3">
  400. <Setter Property="Visibility"
  401. Value="Visible" />
  402. </DataTrigger>
  403. </Style.Triggers>
  404. </Style>
  405. </StackPanel.Style>
  406. <ScrollViewer HorizontalScrollBarVisibility="Auto"
  407. VerticalScrollBarVisibility="Disabled">
  408. <StackPanel Orientation="Vertical">
  409. <TextBlock Text="拍1锁多时,相机拍照位置对应的产品坐标系中位置" />
  410. <Grid HorizontalAlignment="Left">
  411. <Grid.ColumnDefinitions>
  412. <ColumnDefinition Width="Auto" />
  413. <ColumnDefinition Width="Auto" />
  414. <ColumnDefinition Width="Auto" />
  415. <ColumnDefinition Width="Auto" />
  416. <ColumnDefinition Width="Auto" />
  417. <ColumnDefinition Width="Auto" />
  418. <ColumnDefinition Width="Auto" />
  419. <ColumnDefinition Width="Auto" />
  420. <ColumnDefinition Width="Auto" />
  421. </Grid.ColumnDefinitions>
  422. <Grid.RowDefinitions>
  423. <RowDefinition Height="Auto" />
  424. <RowDefinition Height="Auto" />
  425. </Grid.RowDefinitions>
  426. <!--拍照1-->
  427. <TextBlock Grid.Row="0"
  428. Grid.Column="0"
  429. Text="拍照1:"
  430. VerticalAlignment="Center" />
  431. <TextBlock Grid.Row="0"
  432. Grid.Column="1"
  433. Margin="5,0,0,0"
  434. VerticalAlignment="Center"
  435. Text="X:" />
  436. <mah:NumericUpDown Grid.Row="0"
  437. Grid.Column="2"
  438. Value="{Binding SelectProduct.ScrewCameraLocalPos1.X_Position, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  439. Minimum="-9999.000"
  440. Maximum="9999.000"
  441. Interval="0.1"
  442. StringFormat="F3"
  443. MinWidth="60"
  444. HorizontalAlignment="Stretch"
  445. VerticalAlignment="Center"
  446. Margin="0"
  447. Padding="2" />
  448. <TextBlock Grid.Row="0"
  449. Grid.Column="3"
  450. Margin="5,0,0,0"
  451. VerticalAlignment="Center"
  452. Text="Y:" />
  453. <mah:NumericUpDown Grid.Row="0"
  454. Grid.Column="4"
  455. Value="{Binding SelectProduct.ScrewCameraLocalPos1.Y_Position, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  456. Minimum="-9999.000"
  457. Maximum="9999.000"
  458. Interval="0.1"
  459. StringFormat="F3"
  460. MinWidth="60"
  461. HorizontalAlignment="Stretch"
  462. VerticalAlignment="Center"
  463. Margin="0"
  464. Padding="2" />
  465. <TextBlock Grid.Row="0"
  466. Grid.Column="5"
  467. Margin="5,0,0,0"
  468. VerticalAlignment="Center"
  469. Text="Z:" />
  470. <mah:NumericUpDown Grid.Row="0"
  471. Grid.Column="6"
  472. Value="{Binding SelectProduct.ScrewCameraLocalPos1.Z_Position_Start, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  473. Minimum="-9999.000"
  474. Maximum="9999.000"
  475. Interval="0.1"
  476. StringFormat="F3"
  477. MinWidth="60"
  478. HorizontalAlignment="Stretch"
  479. VerticalAlignment="Center"
  480. Margin="0"
  481. Padding="2" />
  482. <!--拍照2-->
  483. <TextBlock Grid.Row="1"
  484. Grid.Column="0"
  485. Text="拍照2:"
  486. VerticalAlignment="Center" />
  487. <TextBlock Grid.Row="1"
  488. Grid.Column="1"
  489. Margin="5,0,0,0"
  490. VerticalAlignment="Center"
  491. Text="X:" />
  492. <mah:NumericUpDown Grid.Row="1"
  493. Grid.Column="2"
  494. Value="{Binding SelectProduct.ScrewCameraLocalPos2.X_Position, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  495. Minimum="-9999.000"
  496. Maximum="9999.000"
  497. Interval="0.1"
  498. StringFormat="F3"
  499. MinWidth="60"
  500. HorizontalAlignment="Stretch"
  501. VerticalAlignment="Center"
  502. Margin="0"
  503. Padding="2" />
  504. <TextBlock Grid.Row="1"
  505. Grid.Column="3"
  506. Margin="5,0,0,0"
  507. VerticalAlignment="Center"
  508. Text="Y:" />
  509. <mah:NumericUpDown Grid.Row="1"
  510. Grid.Column="4"
  511. Value="{Binding SelectProduct.ScrewCameraLocalPos2.Y_Position, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  512. Minimum="-9999.000"
  513. Maximum="9999.000"
  514. Interval="0.1"
  515. StringFormat="F3"
  516. MinWidth="60"
  517. HorizontalAlignment="Stretch"
  518. VerticalAlignment="Center"
  519. Margin="0"
  520. Padding="2" />
  521. <TextBlock Grid.Row="1"
  522. Grid.Column="5"
  523. Margin="5,0,0,0"
  524. VerticalAlignment="Center"
  525. Text="Z:" />
  526. <mah:NumericUpDown Grid.Row="1"
  527. Grid.Column="6"
  528. Value="{Binding SelectProduct.ScrewCameraLocalPos2.Z_Position_Start, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  529. Minimum="-9999.000"
  530. Maximum="9999.000"
  531. Interval="0.1"
  532. StringFormat="F3"
  533. MinWidth="60"
  534. HorizontalAlignment="Stretch"
  535. VerticalAlignment="Center"
  536. Margin="0"
  537. Padding="2" />
  538. <!--通过CAD导入点位按钮-->
  539. <Button Content="通过CAD导入点位"
  540. Grid.Row="0"
  541. Grid.Column="7"
  542. Grid.RowSpan="2"
  543. Margin="10,0"
  544. MinWidth="100"
  545. HorizontalAlignment="Left"
  546. materialDesign:ButtonAssist.CornerRadius="5"
  547. Command="{Binding ImportCadLockCameraPointCommand}" />
  548. <!--通过相机自动矫正锁附点位-->
  549. <Button Content="通过相机自动矫正锁附点位"
  550. Grid.Row="0"
  551. Grid.Column="8"
  552. Grid.RowSpan="2"
  553. Margin="10,0"
  554. MinWidth="150"
  555. HorizontalAlignment="Left"
  556. materialDesign:ButtonAssist.CornerRadius="5"
  557. Command="{Binding AutoCorrectLockPointCommand}" />
  558. </Grid>
  559. </StackPanel>
  560. </ScrollViewer>
  561. </StackPanel>
  562. <!--锁付点位面板-->
  563. <StackPanel x:Name="LockPointPanel"
  564. Orientation="Vertical"
  565. d:Visibility="Visible">
  566. <StackPanel.Style>
  567. <Style TargetType="StackPanel">
  568. <Setter Property="Visibility"
  569. Value="Collapsed" />
  570. <Style.Triggers>
  571. <!-- 当 SelectedIndex == 4 时显示此面板 -->
  572. <DataTrigger Binding="{Binding SelectedIndex}"
  573. Value="6">
  574. <Setter Property="Visibility"
  575. Value="Visible" />
  576. </DataTrigger>
  577. </Style.Triggers>
  578. </Style>
  579. </StackPanel.Style>
  580. <ScrollViewer HorizontalScrollBarVisibility="Auto"
  581. VerticalScrollBarVisibility="Disabled">
  582. <StackPanel Orientation="Vertical">
  583. <StackPanel Orientation="Horizontal"
  584. HorizontalAlignment="Left">
  585. <TextBlock Text="批量设置所有AOI点的起始Z轴高度:"
  586. VerticalAlignment="Center" />
  587. <TextBlock Text="起始Z轴高度:"
  588. Margin="5,0,0,0"
  589. VerticalAlignment="Center" />
  590. <mah:NumericUpDown Value="{Binding LockPointStartZ, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  591. Minimum="-9999.000"
  592. Maximum="9999.000"
  593. Interval="0.1"
  594. StringFormat="F3"
  595. MinWidth="60"
  596. HorizontalAlignment="Stretch"
  597. VerticalAlignment="Center"
  598. Margin="0"
  599. Padding="2" />
  600. <TextBlock Margin="0"
  601. VerticalAlignment="Center"
  602. Text="mm" />
  603. <!--应用按钮-->
  604. <Button Content="应用"
  605. Margin="10,0,0,0"
  606. MinWidth="60"
  607. HorizontalAlignment="Left"
  608. materialDesign:ButtonAssist.CornerRadius="5"
  609. Command="{Binding ApplyLockPointStartZCommand}" />
  610. </StackPanel>
  611. <!--<StackPanel Orientation="Horizontal"
  612. HorizontalAlignment="Left">
  613. <TextBlock Text="批量设置所有锁付点的锁付深度:"
  614. VerticalAlignment="Center" />
  615. <TextBlock Text="锁付深度:"
  616. Margin="5,0,0,0"
  617. VerticalAlignment="Center" />
  618. <mah:NumericUpDown Value="{Binding LockZDepth, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  619. Minimum="-9999.000"
  620. Maximum="9999.000"
  621. Interval="0.1"
  622. StringFormat="F3"
  623. MinWidth="60"
  624. HorizontalAlignment="Stretch"
  625. VerticalAlignment="Center"
  626. Margin="0"
  627. Padding="2" />
  628. <TextBlock Margin="0"
  629. VerticalAlignment="Center"
  630. Text="mm" />
  631. -->
  632. <!--应用按钮-->
  633. <!--
  634. <Button Content="应用"
  635. Margin="10,0,0,0"
  636. MinWidth="60"
  637. HorizontalAlignment="Left"
  638. materialDesign:ButtonAssist.CornerRadius="5"
  639. Command="{Binding ApplyLockPointDepthCommand}" />
  640. </StackPanel>-->
  641. <StackPanel Orientation="Horizontal"
  642. HorizontalAlignment="Left">
  643. <TextBlock Text="批量设置AOI的X Y Z U的各轴速度:"
  644. VerticalAlignment="Center" />
  645. <TextBlock Text="X轴速度:"
  646. Margin="5,0,0,0"
  647. VerticalAlignment="Center" />
  648. <mah:NumericUpDown Value="{Binding LockXSpeed, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  649. Minimum="0"
  650. Maximum="20000"
  651. Interval="1"
  652. StringFormat="F1"
  653. MinWidth="60"
  654. HorizontalAlignment="Stretch"
  655. VerticalAlignment="Center"
  656. Margin="0"
  657. Padding="2" />
  658. <TextBlock Margin="0"
  659. VerticalAlignment="Center"
  660. Text="mm/s" />
  661. <TextBlock Text="Y轴速度:"
  662. Margin="5,0,0,0"
  663. VerticalAlignment="Center" />
  664. <mah:NumericUpDown Value="{Binding LockYSpeed, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  665. Minimum="0"
  666. Maximum="20000"
  667. Interval="1"
  668. StringFormat="F1"
  669. MinWidth="60"
  670. HorizontalAlignment="Stretch"
  671. VerticalAlignment="Center"
  672. Margin="0"
  673. Padding="2" />
  674. <TextBlock Margin="0"
  675. VerticalAlignment="Center"
  676. Text="mm/s" />
  677. <TextBlock Text="Z轴速度:"
  678. Margin="5,0,0,0"
  679. VerticalAlignment="Center" />
  680. <mah:NumericUpDown Value="{Binding LockZSpeed, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  681. Minimum="0"
  682. Maximum="20000"
  683. Interval="1"
  684. StringFormat="F1"
  685. MinWidth="60"
  686. HorizontalAlignment="Stretch"
  687. VerticalAlignment="Center"
  688. Margin="0"
  689. Padding="2" />
  690. <TextBlock Margin="0"
  691. VerticalAlignment="Center"
  692. Text="mm/s" />
  693. <TextBlock Text="U轴速度:"
  694. Margin="5,0,0,0"
  695. VerticalAlignment="Center" />
  696. <mah:NumericUpDown Value="{Binding LockUSpeed, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  697. Minimum="0"
  698. Maximum="20000"
  699. Interval="1"
  700. StringFormat="F1"
  701. MinWidth="60"
  702. HorizontalAlignment="Stretch"
  703. VerticalAlignment="Center"
  704. Margin="0"
  705. Padding="2" />
  706. <TextBlock Margin="0"
  707. VerticalAlignment="Center"
  708. Text="mm/s" />
  709. <!--应用按钮-->
  710. <Button Content="应用"
  711. Margin="10,0,0,0"
  712. MinWidth="60"
  713. HorizontalAlignment="Left"
  714. materialDesign:ButtonAssist.CornerRadius="5"
  715. Command="{Binding ApplyLockPointSpeedCommand}" />
  716. </StackPanel>
  717. <!--批量设置所有锁付点的供料器编号和电批程序编号--><!--
  718. <StackPanel Orientation="Horizontal"
  719. HorizontalAlignment="Left">
  720. <TextBlock Text="批量设置所有锁付点的供料器编号和电批程序编号:"
  721. VerticalAlignment="Center" />
  722. <TextBlock Text="供料器编号:"
  723. Margin="5,0,0,0"
  724. VerticalAlignment="Center" />
  725. <mah:NumericUpDown Value="{Binding LockFeederNumber, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  726. Minimum="0"
  727. Maximum="9999"
  728. Interval="1"
  729. StringFormat="F0"
  730. MinWidth="60"
  731. HorizontalAlignment="Stretch"
  732. VerticalAlignment="Center"
  733. Margin="0"
  734. Padding="2" />
  735. <TextBlock Text="电批程序编号:"
  736. Margin="5,0,0,0"
  737. VerticalAlignment="Center" />
  738. <mah:NumericUpDown Value="{Binding LockScrewProgramNumber, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  739. Minimum="0"
  740. Maximum="100"
  741. Interval="1"
  742. StringFormat="F0"
  743. MinWidth="60"
  744. HorizontalAlignment="Stretch"
  745. VerticalAlignment="Center"
  746. Margin="0"
  747. Padding="2" />
  748. --><!--应用按钮--><!--
  749. <Button Content="应用"
  750. Margin="10,0,0,0"
  751. MinWidth="60"
  752. HorizontalAlignment="Left"
  753. materialDesign:ButtonAssist.CornerRadius="5"
  754. Command="{Binding ApplyLockPointFeederAndScrewProgramCommand}" />
  755. </StackPanel>-->
  756. </StackPanel>
  757. </ScrollViewer>
  758. </StackPanel>
  759. </StackPanel>
  760. <!--点位表-->
  761. <DataGrid x:Name="dgPoints"
  762. AutoGenerateColumns="False"
  763. CanUserAddRows="False"
  764. CanUserDeleteRows="False"
  765. ColumnWidth="*"
  766. SelectionUnit="FullRow"
  767. SelectionMode="Single"
  768. SelectedItem="{Binding SelectedPointInDataGrid,Mode=TwoWay}"
  769. ItemsSource="{Binding Points}"
  770. HeadersVisibility="Column"
  771. HorizontalScrollBarVisibility="Auto"
  772. ScrollViewer.CanContentScroll="True"
  773. ScrollViewer.HorizontalScrollBarVisibility="Auto"
  774. GridLinesVisibility="All"
  775. VerticalGridLinesBrush="#D0D0D0">
  776. <DataGrid.Resources>
  777. <Style TargetType="DataGridCell">
  778. <Style.Resources>
  779. <SolidColorBrush x:Key="{x:Static SystemColors.InactiveSelectionHighlightBrushKey}"
  780. Color="#0078D7" />
  781. </Style.Resources>
  782. <Setter Property="MinHeight"
  783. Value="25" />
  784. <Setter Property="VerticalContentAlignment"
  785. Value="Center" />
  786. <Setter Property="HorizontalContentAlignment"
  787. Value="Center" />
  788. <Setter Property="VerticalAlignment"
  789. Value="Center" />
  790. <Setter Property="TextBlock.TextAlignment"
  791. Value="Center" />
  792. <Setter Property="Padding"
  793. Value="0" />
  794. <Style.Triggers>
  795. <Trigger Property="IsSelected"
  796. Value="True">
  797. <Setter Property="Foreground"
  798. Value="White" />
  799. </Trigger>
  800. </Style.Triggers>
  801. </Style>
  802. <!-- 为 TextBlock 添加默认居中样式 -->
  803. <Style TargetType="TextBlock">
  804. <Setter Property="TextAlignment"
  805. Value="Center" />
  806. <Setter Property="HorizontalAlignment"
  807. Value="Center" />
  808. <Setter Property="VerticalAlignment"
  809. Value="Center" />
  810. </Style>
  811. </DataGrid.Resources>
  812. <DataGrid.Columns>
  813. <DataGridTextColumn Header="{lex:Loc 编号}"
  814. IsReadOnly="True"
  815. MinWidth="60"
  816. Width="Auto"
  817. Binding="{Binding Number, Mode=TwoWay, StringFormat={}{0:F0}}">
  818. </DataGridTextColumn>
  819. <DataGridTextColumn Header="{lex:Loc 标签}"
  820. MinWidth="100"
  821. Width="Auto"
  822. Binding="{Binding Label, Mode=TwoWay}" />
  823. <!--X 起点坐标-->
  824. <DataGridTemplateColumn Header="X起点位置"
  825. MinWidth="60"
  826. Width="Auto">
  827. <DataGridTemplateColumn.CellTemplate>
  828. <DataTemplate>
  829. <TextBlock Text="{Binding X_Position_Start, StringFormat={}{0:F3}}"
  830. HorizontalAlignment="Center"
  831. VerticalAlignment="Center" />
  832. </DataTemplate>
  833. </DataGridTemplateColumn.CellTemplate>
  834. <DataGridTemplateColumn.CellEditingTemplate>
  835. <DataTemplate>
  836. <mah:NumericUpDown Value="{Binding X_Position_Start, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  837. Minimum="-9999.000"
  838. Maximum="9999.000"
  839. Interval="0.1"
  840. StringFormat="F3"
  841. HorizontalAlignment="Stretch"
  842. VerticalAlignment="Center"
  843. Margin="0"
  844. Padding="2" />
  845. </DataTemplate>
  846. </DataGridTemplateColumn.CellEditingTemplate>
  847. </DataGridTemplateColumn>
  848. <!--X 起点速度-->
  849. <DataGridTemplateColumn Header="X起点速度"
  850. MinWidth="60"
  851. Width="Auto">
  852. <DataGridTemplateColumn.CellTemplate>
  853. <DataTemplate>
  854. <TextBlock Text="{Binding X_Velocity_Start, StringFormat={}{0:F0}}"
  855. HorizontalAlignment="Center"
  856. VerticalAlignment="Center" />
  857. </DataTemplate>
  858. </DataGridTemplateColumn.CellTemplate>
  859. <DataGridTemplateColumn.CellEditingTemplate>
  860. <DataTemplate>
  861. <mah:NumericUpDown Value="{Binding X_Velocity_Start, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  862. Minimum="0"
  863. Maximum="9999.000"
  864. Interval="1"
  865. StringFormat="F3"
  866. HorizontalAlignment="Stretch"
  867. VerticalAlignment="Center"
  868. Margin="0"
  869. Padding="2" />
  870. </DataTemplate>
  871. </DataGridTemplateColumn.CellEditingTemplate>
  872. </DataGridTemplateColumn>
  873. <!--X 终点坐标-->
  874. <DataGridTemplateColumn Header="X终点位置"
  875. MinWidth="60"
  876. Width="Auto">
  877. <DataGridTemplateColumn.CellTemplate>
  878. <DataTemplate>
  879. <TextBlock Text="{Binding X_Position_Stop, StringFormat={}{0:F3}}"
  880. HorizontalAlignment="Center"
  881. VerticalAlignment="Center" />
  882. </DataTemplate>
  883. </DataGridTemplateColumn.CellTemplate>
  884. <DataGridTemplateColumn.CellEditingTemplate>
  885. <DataTemplate>
  886. <mah:NumericUpDown Value="{Binding X_Position_Stop, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  887. Minimum="-9999.000"
  888. Maximum="9999.000"
  889. Interval="0.1"
  890. StringFormat="F3"
  891. HorizontalAlignment="Stretch"
  892. VerticalAlignment="Center"
  893. Margin="0"
  894. Padding="2" />
  895. </DataTemplate>
  896. </DataGridTemplateColumn.CellEditingTemplate>
  897. </DataGridTemplateColumn>
  898. <!--X 终点速度-->
  899. <DataGridTemplateColumn Header="X终点速度"
  900. MinWidth="60"
  901. Width="Auto">
  902. <DataGridTemplateColumn.CellTemplate>
  903. <DataTemplate>
  904. <TextBlock Text="{Binding X_Velocity_Stop, StringFormat={}{0:F0}}"
  905. HorizontalAlignment="Center"
  906. VerticalAlignment="Center" />
  907. </DataTemplate>
  908. </DataGridTemplateColumn.CellTemplate>
  909. <DataGridTemplateColumn.CellEditingTemplate>
  910. <DataTemplate>
  911. <mah:NumericUpDown Value="{Binding X_Velocity_Stop, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  912. Minimum="0"
  913. Maximum="9999.000"
  914. Interval="1"
  915. StringFormat="F3"
  916. HorizontalAlignment="Stretch"
  917. VerticalAlignment="Center"
  918. Margin="0"
  919. Padding="2" />
  920. </DataTemplate>
  921. </DataGridTemplateColumn.CellEditingTemplate>
  922. </DataGridTemplateColumn>
  923. <!--Y 起点坐标-->
  924. <DataGridTemplateColumn Header="Y起点位置"
  925. MinWidth="60"
  926. Width="Auto">
  927. <DataGridTemplateColumn.CellTemplate>
  928. <DataTemplate>
  929. <TextBlock Text="{Binding Y_Position_Start, StringFormat={}{0:F3}}"
  930. HorizontalAlignment="Center"
  931. VerticalAlignment="Center" />
  932. </DataTemplate>
  933. </DataGridTemplateColumn.CellTemplate>
  934. <DataGridTemplateColumn.CellEditingTemplate>
  935. <DataTemplate>
  936. <mah:NumericUpDown Value="{Binding Y_Position_Start, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  937. Minimum="-9999.000"
  938. Maximum="9999.000"
  939. Interval="0.1"
  940. StringFormat="F3"
  941. HorizontalAlignment="Stretch"
  942. VerticalAlignment="Center"
  943. Margin="0"
  944. Padding="2" />
  945. </DataTemplate>
  946. </DataGridTemplateColumn.CellEditingTemplate>
  947. </DataGridTemplateColumn>
  948. <!--Y 起点速度-->
  949. <DataGridTemplateColumn Header="Y起点速度"
  950. MinWidth="60"
  951. Width="Auto">
  952. <DataGridTemplateColumn.CellTemplate>
  953. <DataTemplate>
  954. <TextBlock Text="{Binding Y_Velocity_Start, StringFormat={}{0:F0}}"
  955. HorizontalAlignment="Center"
  956. VerticalAlignment="Center" />
  957. </DataTemplate>
  958. </DataGridTemplateColumn.CellTemplate>
  959. <DataGridTemplateColumn.CellEditingTemplate>
  960. <DataTemplate>
  961. <mah:NumericUpDown Value="{Binding Y_Velocity_Start, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  962. Minimum="0"
  963. Maximum="9999.000"
  964. Interval="1"
  965. StringFormat="F3"
  966. HorizontalAlignment="Stretch"
  967. VerticalAlignment="Center"
  968. Margin="0"
  969. Padding="2" />
  970. </DataTemplate>
  971. </DataGridTemplateColumn.CellEditingTemplate>
  972. </DataGridTemplateColumn>
  973. <!--Y 终点坐标-->
  974. <DataGridTemplateColumn Header="Y终点位置"
  975. MinWidth="60"
  976. Width="Auto">
  977. <DataGridTemplateColumn.CellTemplate>
  978. <DataTemplate>
  979. <TextBlock Text="{Binding Y_Position_Stop, StringFormat={}{0:F3}}"
  980. HorizontalAlignment="Center"
  981. VerticalAlignment="Center" />
  982. </DataTemplate>
  983. </DataGridTemplateColumn.CellTemplate>
  984. <DataGridTemplateColumn.CellEditingTemplate>
  985. <DataTemplate>
  986. <mah:NumericUpDown Value="{Binding Y_Position_Stop, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  987. Minimum="-9999.000"
  988. Maximum="9999.000"
  989. Interval="0.1"
  990. StringFormat="F3"
  991. HorizontalAlignment="Stretch"
  992. VerticalAlignment="Center"
  993. Margin="0"
  994. Padding="2" />
  995. </DataTemplate>
  996. </DataGridTemplateColumn.CellEditingTemplate>
  997. </DataGridTemplateColumn>
  998. <!--Y 终点速度-->
  999. <DataGridTemplateColumn Header="Y终点速度"
  1000. MinWidth="60"
  1001. Width="Auto">
  1002. <DataGridTemplateColumn.CellTemplate>
  1003. <DataTemplate>
  1004. <TextBlock Text="{Binding Y_Velocity_Stop, StringFormat={}{0:F0}}"
  1005. HorizontalAlignment="Center"
  1006. VerticalAlignment="Center" />
  1007. </DataTemplate>
  1008. </DataGridTemplateColumn.CellTemplate>
  1009. <DataGridTemplateColumn.CellEditingTemplate>
  1010. <DataTemplate>
  1011. <mah:NumericUpDown Value="{Binding Y_Velocity_Stop, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  1012. Minimum="0"
  1013. Maximum="9999.000"
  1014. Interval="1"
  1015. StringFormat="F3"
  1016. HorizontalAlignment="Stretch"
  1017. VerticalAlignment="Center"
  1018. Margin="0"
  1019. Padding="2" />
  1020. </DataTemplate>
  1021. </DataGridTemplateColumn.CellEditingTemplate>
  1022. </DataGridTemplateColumn>
  1023. <!--Z 起点坐标-->
  1024. <DataGridTemplateColumn Header="Z起点位置"
  1025. MinWidth="60"
  1026. Width="Auto">
  1027. <DataGridTemplateColumn.CellTemplate>
  1028. <DataTemplate>
  1029. <TextBlock Text="{Binding Z_Position_Start, StringFormat={}{0:F3}}"
  1030. HorizontalAlignment="Center"
  1031. VerticalAlignment="Center" />
  1032. </DataTemplate>
  1033. </DataGridTemplateColumn.CellTemplate>
  1034. <DataGridTemplateColumn.CellEditingTemplate>
  1035. <DataTemplate>
  1036. <mah:NumericUpDown Value="{Binding Z_Position_Start, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  1037. Minimum="-9999.000"
  1038. Maximum="9999.000"
  1039. Interval="0.1"
  1040. StringFormat="F3"
  1041. HorizontalAlignment="Stretch"
  1042. VerticalAlignment="Center"
  1043. Margin="0"
  1044. Padding="2" />
  1045. </DataTemplate>
  1046. </DataGridTemplateColumn.CellEditingTemplate>
  1047. </DataGridTemplateColumn>
  1048. <!--Z 起点速度-->
  1049. <DataGridTemplateColumn Header="Z起点速度"
  1050. MinWidth="60"
  1051. Width="Auto">
  1052. <DataGridTemplateColumn.CellTemplate>
  1053. <DataTemplate>
  1054. <TextBlock Text="{Binding Z_Velocity_Start, StringFormat={}{0:F0}}"
  1055. HorizontalAlignment="Center"
  1056. VerticalAlignment="Center" />
  1057. </DataTemplate>
  1058. </DataGridTemplateColumn.CellTemplate>
  1059. <DataGridTemplateColumn.CellEditingTemplate>
  1060. <DataTemplate>
  1061. <mah:NumericUpDown Value="{Binding Z_Velocity_Start, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  1062. Minimum="0"
  1063. Maximum="9999.000"
  1064. Interval="1"
  1065. StringFormat="F3"
  1066. HorizontalAlignment="Stretch"
  1067. VerticalAlignment="Center"
  1068. Margin="0"
  1069. Padding="2" />
  1070. </DataTemplate>
  1071. </DataGridTemplateColumn.CellEditingTemplate>
  1072. </DataGridTemplateColumn>
  1073. <!--Z 终点坐标-->
  1074. <DataGridTemplateColumn Header="Z终点位置"
  1075. MinWidth="60"
  1076. Width="Auto">
  1077. <DataGridTemplateColumn.CellTemplate>
  1078. <DataTemplate>
  1079. <TextBlock Text="{Binding Z_Position_Stop, StringFormat={}{0:F3}}"
  1080. HorizontalAlignment="Center"
  1081. VerticalAlignment="Center" />
  1082. </DataTemplate>
  1083. </DataGridTemplateColumn.CellTemplate>
  1084. <DataGridTemplateColumn.CellEditingTemplate>
  1085. <DataTemplate>
  1086. <mah:NumericUpDown Value="{Binding Z_Position_Stop, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  1087. Minimum="-9999.000"
  1088. Maximum="9999.000"
  1089. Interval="0.1"
  1090. StringFormat="F3"
  1091. HorizontalAlignment="Stretch"
  1092. VerticalAlignment="Center"
  1093. Margin="0"
  1094. Padding="2" />
  1095. </DataTemplate>
  1096. </DataGridTemplateColumn.CellEditingTemplate>
  1097. </DataGridTemplateColumn>
  1098. <!--Z 终点速度-->
  1099. <DataGridTemplateColumn Header="Z终点速度"
  1100. MinWidth="60"
  1101. Width="Auto">
  1102. <DataGridTemplateColumn.CellTemplate>
  1103. <DataTemplate>
  1104. <TextBlock Text="{Binding Z_Velocity_Stop, StringFormat={}{0:F0}}"
  1105. HorizontalAlignment="Center"
  1106. VerticalAlignment="Center" />
  1107. </DataTemplate>
  1108. </DataGridTemplateColumn.CellTemplate>
  1109. <DataGridTemplateColumn.CellEditingTemplate>
  1110. <DataTemplate>
  1111. <mah:NumericUpDown Value="{Binding Z_Velocity_Stop, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  1112. Minimum="0"
  1113. Maximum="9999.000"
  1114. Interval="1"
  1115. StringFormat="F3"
  1116. HorizontalAlignment="Stretch"
  1117. VerticalAlignment="Center"
  1118. Margin="0"
  1119. Padding="2" />
  1120. </DataTemplate>
  1121. </DataGridTemplateColumn.CellEditingTemplate>
  1122. </DataGridTemplateColumn>
  1123. <!--U 起点坐标-->
  1124. <DataGridTemplateColumn Header="U起点位置"
  1125. MinWidth="60"
  1126. Width="Auto">
  1127. <DataGridTemplateColumn.CellTemplate>
  1128. <DataTemplate>
  1129. <TextBlock Text="{Binding U_Position_Start, StringFormat={}{0:F3}}"
  1130. HorizontalAlignment="Center"
  1131. VerticalAlignment="Center" />
  1132. </DataTemplate>
  1133. </DataGridTemplateColumn.CellTemplate>
  1134. <DataGridTemplateColumn.CellEditingTemplate>
  1135. <DataTemplate>
  1136. <mah:NumericUpDown Value="{Binding U_Position_Start, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  1137. Minimum="-9999.000"
  1138. Maximum="9999.000"
  1139. Interval="0.1"
  1140. StringFormat="F3"
  1141. HorizontalAlignment="Stretch"
  1142. VerticalAlignment="Center"
  1143. Margin="0"
  1144. Padding="2" />
  1145. </DataTemplate>
  1146. </DataGridTemplateColumn.CellEditingTemplate>
  1147. </DataGridTemplateColumn>
  1148. <!--U 起点速度-->
  1149. <DataGridTemplateColumn Header="U起点速度"
  1150. MinWidth="60"
  1151. Width="Auto">
  1152. <DataGridTemplateColumn.CellTemplate>
  1153. <DataTemplate>
  1154. <TextBlock Text="{Binding U_Velocity_Start, StringFormat={}{0:F0}}"
  1155. HorizontalAlignment="Center"
  1156. VerticalAlignment="Center" />
  1157. </DataTemplate>
  1158. </DataGridTemplateColumn.CellTemplate>
  1159. <DataGridTemplateColumn.CellEditingTemplate>
  1160. <DataTemplate>
  1161. <mah:NumericUpDown Value="{Binding U_Velocity_Start, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  1162. Minimum="0"
  1163. Maximum="9999.000"
  1164. Interval="1"
  1165. StringFormat="F3"
  1166. HorizontalAlignment="Stretch"
  1167. VerticalAlignment="Center"
  1168. Margin="0"
  1169. Padding="2" />
  1170. </DataTemplate>
  1171. </DataGridTemplateColumn.CellEditingTemplate>
  1172. </DataGridTemplateColumn>
  1173. <!--U 终点坐标-->
  1174. <DataGridTemplateColumn Header="U终点位置"
  1175. MinWidth="60"
  1176. Width="Auto">
  1177. <DataGridTemplateColumn.CellTemplate>
  1178. <DataTemplate>
  1179. <TextBlock Text="{Binding U_Position_Stop, StringFormat={}{0:F3}}"
  1180. HorizontalAlignment="Center"
  1181. VerticalAlignment="Center" />
  1182. </DataTemplate>
  1183. </DataGridTemplateColumn.CellTemplate>
  1184. <DataGridTemplateColumn.CellEditingTemplate>
  1185. <DataTemplate>
  1186. <mah:NumericUpDown Value="{Binding U_Position_Stop, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  1187. Minimum="-9999.000"
  1188. Maximum="9999.000"
  1189. Interval="0.1"
  1190. StringFormat="F3"
  1191. HorizontalAlignment="Stretch"
  1192. VerticalAlignment="Center"
  1193. Margin="0"
  1194. Padding="2" />
  1195. </DataTemplate>
  1196. </DataGridTemplateColumn.CellEditingTemplate>
  1197. </DataGridTemplateColumn>
  1198. <!--U 终点速度-->
  1199. <DataGridTemplateColumn Header="U终点速度"
  1200. MinWidth="60"
  1201. Width="Auto">
  1202. <DataGridTemplateColumn.CellTemplate>
  1203. <DataTemplate>
  1204. <TextBlock Text="{Binding U_Velocity_Stop, StringFormat={}{0:F0}}"
  1205. HorizontalAlignment="Center"
  1206. VerticalAlignment="Center" />
  1207. </DataTemplate>
  1208. </DataGridTemplateColumn.CellTemplate>
  1209. <DataGridTemplateColumn.CellEditingTemplate>
  1210. <DataTemplate>
  1211. <mah:NumericUpDown Value="{Binding U_Velocity_Stop, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  1212. Minimum="0"
  1213. Maximum="9999.000"
  1214. Interval="1"
  1215. StringFormat="F3"
  1216. HorizontalAlignment="Stretch"
  1217. VerticalAlignment="Center"
  1218. Margin="0"
  1219. Padding="2" />
  1220. </DataTemplate>
  1221. </DataGridTemplateColumn.CellEditingTemplate>
  1222. </DataGridTemplateColumn>
  1223. <!--启用本起始位节点-->
  1224. <DataGridTemplateColumn Header="启用本起始位节点"
  1225. MinWidth="60"
  1226. Width="Auto">
  1227. <DataGridTemplateColumn.CellTemplate>
  1228. <DataTemplate>
  1229. <TextBlock Text="{Binding Enable_Start_Node, StringFormat={}{0:F0}}"
  1230. HorizontalAlignment="Center"
  1231. VerticalAlignment="Center" />
  1232. </DataTemplate>
  1233. </DataGridTemplateColumn.CellTemplate>
  1234. <DataGridTemplateColumn.CellEditingTemplate>
  1235. <DataTemplate>
  1236. <mah:NumericUpDown Value="{Binding Enable_Start_Node, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  1237. Minimum="0"
  1238. Maximum="9999.000"
  1239. Interval="1"
  1240. StringFormat="F3"
  1241. HorizontalAlignment="Stretch"
  1242. VerticalAlignment="Center"
  1243. Margin="0"
  1244. Padding="2" />
  1245. </DataTemplate>
  1246. </DataGridTemplateColumn.CellEditingTemplate>
  1247. </DataGridTemplateColumn>
  1248. <!--启用脉冲-->
  1249. <DataGridTemplateColumn Header="启用脉冲"
  1250. MinWidth="60"
  1251. Width="Auto">
  1252. <DataGridTemplateColumn.CellTemplate>
  1253. <DataTemplate>
  1254. <TextBlock Text="{Binding Enable_Pulse, StringFormat={}{0:F0}}"
  1255. HorizontalAlignment="Center"
  1256. VerticalAlignment="Center" />
  1257. </DataTemplate>
  1258. </DataGridTemplateColumn.CellTemplate>
  1259. <DataGridTemplateColumn.CellEditingTemplate>
  1260. <DataTemplate>
  1261. <mah:NumericUpDown Value="{Binding Enable_Pulse, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  1262. Minimum="0"
  1263. Maximum="9999.000"
  1264. Interval="1"
  1265. StringFormat="F3"
  1266. HorizontalAlignment="Stretch"
  1267. VerticalAlignment="Center"
  1268. Margin="0"
  1269. Padding="2" />
  1270. </DataTemplate>
  1271. </DataGridTemplateColumn.CellEditingTemplate>
  1272. </DataGridTemplateColumn>
  1273. <!--启用3D-->
  1274. <DataGridTemplateColumn Header="启用3D"
  1275. MinWidth="60"
  1276. Width="Auto">
  1277. <DataGridTemplateColumn.CellTemplate>
  1278. <DataTemplate>
  1279. <TextBlock Text="{Binding Enable_3D, StringFormat={}{0:F0}}"
  1280. HorizontalAlignment="Center"
  1281. VerticalAlignment="Center" />
  1282. </DataTemplate>
  1283. </DataGridTemplateColumn.CellTemplate>
  1284. <DataGridTemplateColumn.CellEditingTemplate>
  1285. <DataTemplate>
  1286. <mah:NumericUpDown Value="{Binding Enable_3D, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  1287. Minimum="0"
  1288. Maximum="9999.000"
  1289. Interval="1"
  1290. StringFormat="F3"
  1291. HorizontalAlignment="Stretch"
  1292. VerticalAlignment="Center"
  1293. Margin="0"
  1294. Padding="2" />
  1295. </DataTemplate>
  1296. </DataGridTemplateColumn.CellEditingTemplate>
  1297. </DataGridTemplateColumn>
  1298. <!--启用等待完成-->
  1299. <DataGridTemplateColumn Header="启用等待完成"
  1300. MinWidth="60"
  1301. Width="Auto">
  1302. <DataGridTemplateColumn.CellTemplate>
  1303. <DataTemplate>
  1304. <TextBlock Text="{Binding Enable_Wait_Finish, StringFormat={}{0:F0}}"
  1305. HorizontalAlignment="Center"
  1306. VerticalAlignment="Center" />
  1307. </DataTemplate>
  1308. </DataGridTemplateColumn.CellTemplate>
  1309. <DataGridTemplateColumn.CellEditingTemplate>
  1310. <DataTemplate>
  1311. <mah:NumericUpDown Value="{Binding Enable_Wait_Finish, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  1312. Minimum="0"
  1313. Maximum="9999.000"
  1314. Interval="1"
  1315. StringFormat="F3"
  1316. HorizontalAlignment="Stretch"
  1317. VerticalAlignment="Center"
  1318. Margin="0"
  1319. Padding="2" />
  1320. </DataTemplate>
  1321. </DataGridTemplateColumn.CellEditingTemplate>
  1322. </DataGridTemplateColumn>
  1323. <!--启用Light1-->
  1324. <DataGridTemplateColumn Header="启用Light1"
  1325. MinWidth="60"
  1326. Width="Auto">
  1327. <DataGridTemplateColumn.CellTemplate>
  1328. <DataTemplate>
  1329. <TextBlock Text="{Binding Enable_Light1, StringFormat={}{0:F0}}"
  1330. HorizontalAlignment="Center"
  1331. VerticalAlignment="Center" />
  1332. </DataTemplate>
  1333. </DataGridTemplateColumn.CellTemplate>
  1334. <DataGridTemplateColumn.CellEditingTemplate>
  1335. <DataTemplate>
  1336. <mah:NumericUpDown Value="{Binding Enable_Light1, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  1337. Minimum="0"
  1338. Maximum="9999.000"
  1339. Interval="1"
  1340. StringFormat="F3"
  1341. HorizontalAlignment="Stretch"
  1342. VerticalAlignment="Center"
  1343. Margin="0"
  1344. Padding="2" />
  1345. </DataTemplate>
  1346. </DataGridTemplateColumn.CellEditingTemplate>
  1347. </DataGridTemplateColumn>
  1348. <!--启用Light2-->
  1349. <DataGridTemplateColumn Header="启用Light2"
  1350. MinWidth="60"
  1351. Width="Auto">
  1352. <DataGridTemplateColumn.CellTemplate>
  1353. <DataTemplate>
  1354. <TextBlock Text="{Binding Enable_Light2, StringFormat={}{0:F0}}"
  1355. HorizontalAlignment="Center"
  1356. VerticalAlignment="Center" />
  1357. </DataTemplate>
  1358. </DataGridTemplateColumn.CellTemplate>
  1359. <DataGridTemplateColumn.CellEditingTemplate>
  1360. <DataTemplate>
  1361. <mah:NumericUpDown Value="{Binding Enable_Light2, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  1362. Minimum="0"
  1363. Maximum="9999.000"
  1364. Interval="1"
  1365. StringFormat="F3"
  1366. HorizontalAlignment="Stretch"
  1367. VerticalAlignment="Center"
  1368. Margin="0"
  1369. Padding="2" />
  1370. </DataTemplate>
  1371. </DataGridTemplateColumn.CellEditingTemplate>
  1372. </DataGridTemplateColumn>
  1373. <!--启用Light3-->
  1374. <DataGridTemplateColumn Header="启用Light3"
  1375. MinWidth="60"
  1376. Width="Auto">
  1377. <DataGridTemplateColumn.CellTemplate>
  1378. <DataTemplate>
  1379. <TextBlock Text="{Binding Enable_Light3, StringFormat={}{0:F0}}"
  1380. HorizontalAlignment="Center"
  1381. VerticalAlignment="Center" />
  1382. </DataTemplate>
  1383. </DataGridTemplateColumn.CellTemplate>
  1384. <DataGridTemplateColumn.CellEditingTemplate>
  1385. <DataTemplate>
  1386. <mah:NumericUpDown Value="{Binding Enable_Light3, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  1387. Minimum="0"
  1388. Maximum="9999.000"
  1389. Interval="1"
  1390. StringFormat="F3"
  1391. HorizontalAlignment="Stretch"
  1392. VerticalAlignment="Center"
  1393. Margin="0"
  1394. Padding="2" />
  1395. </DataTemplate>
  1396. </DataGridTemplateColumn.CellEditingTemplate>
  1397. </DataGridTemplateColumn>
  1398. <!--启用Light4-->
  1399. <DataGridTemplateColumn Header="启用Light4"
  1400. MinWidth="60"
  1401. Width="Auto">
  1402. <DataGridTemplateColumn.CellTemplate>
  1403. <DataTemplate>
  1404. <TextBlock Text="{Binding Enable_Light4, StringFormat={}{0:F0}}"
  1405. HorizontalAlignment="Center"
  1406. VerticalAlignment="Center" />
  1407. </DataTemplate>
  1408. </DataGridTemplateColumn.CellTemplate>
  1409. <DataGridTemplateColumn.CellEditingTemplate>
  1410. <DataTemplate>
  1411. <mah:NumericUpDown Value="{Binding Enable_Light4, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
  1412. Minimum="0"
  1413. Maximum="9999.000"
  1414. Interval="1"
  1415. StringFormat="F3"
  1416. HorizontalAlignment="Stretch"
  1417. VerticalAlignment="Center"
  1418. Margin="0"
  1419. Padding="2" />
  1420. </DataTemplate>
  1421. </DataGridTemplateColumn.CellEditingTemplate>
  1422. </DataGridTemplateColumn>
  1423. <DataGridTextColumn Header="{lex:Loc 描述}"
  1424. MinWidth="100"
  1425. Width="200"
  1426. Binding="{Binding Description, Mode=TwoWay}" />
  1427. </DataGrid.Columns>
  1428. </DataGrid>
  1429. </DockPanel>
  1430. </DockPanel>
  1431. <GridSplitter Grid.Column="0"
  1432. Grid.Row="0"
  1433. Grid.RowSpan="2"
  1434. Width="2"
  1435. Background="DeepSkyBlue"
  1436. VerticalAlignment="Stretch"
  1437. HorizontalAlignment="Right" />
  1438. <!--运动控制区-->
  1439. <Viewbox Grid.Column="1">
  1440. <Grid Grid.Row="1">
  1441. <Grid.ColumnDefinitions>
  1442. <ColumnDefinition Width="auto" />
  1443. <ColumnDefinition Width="auto" />
  1444. </Grid.ColumnDefinitions>
  1445. <Grid Grid.Column="0"
  1446. VerticalAlignment="Center">
  1447. <Grid.RowDefinitions>
  1448. <RowDefinition Height="auto" />
  1449. <RowDefinition Height="auto" />
  1450. <RowDefinition Height="auto" />
  1451. <RowDefinition Height="auto" />
  1452. <RowDefinition Height="auto" />
  1453. </Grid.RowDefinitions>
  1454. <Button Content="{lex:Loc 上使能}"
  1455. Grid.Row="0"
  1456. materialDesign:ButtonAssist.CornerRadius="10"
  1457. Style="{StaticResource MaterialDesignRaisedDarkButton}"
  1458. Command="{Binding DataContext.MotorCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}"
  1459. CommandParameter="True" />
  1460. <Button Content="{lex:Loc 下使能}"
  1461. Grid.Row="1"
  1462. Margin="0,10,0,10"
  1463. materialDesign:ButtonAssist.CornerRadius="10"
  1464. Style="{StaticResource MaterialDesignRaisedDarkButton}"
  1465. Command="{Binding DataContext.MotorCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}"
  1466. CommandParameter="False" />
  1467. <Button Content="{lex:Loc 复位错误}"
  1468. Grid.Row="2"
  1469. materialDesign:ButtonAssist.CornerRadius="10"
  1470. Style="{StaticResource MaterialDesignRaisedDarkButton}"
  1471. Command="{Binding DataContext.ResetCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}" />
  1472. <Button Content="{lex:Loc 释放刹车}"
  1473. Grid.Row="3"
  1474. Margin="0,10,0,10"
  1475. materialDesign:ButtonAssist.CornerRadius="10"
  1476. Style="{StaticResource MaterialDesignRaisedDarkButton}"
  1477. Command="{Binding DataContext.sFreeCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}" />
  1478. <Button Content="{lex:Loc 锁定刹车}"
  1479. Grid.Row="4"
  1480. materialDesign:ButtonAssist.CornerRadius="10"
  1481. Style="{StaticResource MaterialDesignRaisedDarkButton}"
  1482. Command="{Binding DataContext.SLockCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}" />
  1483. </Grid>
  1484. <Grid Grid.Column="1">
  1485. <Grid.RowDefinitions>
  1486. <RowDefinition Height="auto" />
  1487. <RowDefinition Height="*" />
  1488. </Grid.RowDefinitions>
  1489. <TextBlock VerticalAlignment="Center"
  1490. Margin="10,0">
  1491. <TextBlock.Text>
  1492. <MultiBinding StringFormat="{}CurPos X: {0:F3} mm Y: {1:F3} mm Z: {2:F3} mm U: {3:F3} mm">
  1493. <Binding Path="Robot.CurrentPosition.X" />
  1494. <Binding Path="Robot.CurrentPosition.Y" />
  1495. <Binding Path="Robot.CurrentPosition.Z" />
  1496. <Binding Path="Robot.CurrentPosition.U" />
  1497. </MultiBinding>
  1498. </TextBlock.Text>
  1499. </TextBlock>
  1500. <Grid Grid.Row="1">
  1501. <Grid.ColumnDefinitions>
  1502. <ColumnDefinition Width="auto" />
  1503. <ColumnDefinition Width="auto" />
  1504. <ColumnDefinition Width="auto" />
  1505. <ColumnDefinition Width="auto" />
  1506. <ColumnDefinition Width="auto" />
  1507. <ColumnDefinition Width="auto" />
  1508. </Grid.ColumnDefinitions>
  1509. <Grid.RowDefinitions>
  1510. <RowDefinition Height="auto" />
  1511. <RowDefinition Height="auto" />
  1512. <RowDefinition Height="auto" />
  1513. <RowDefinition Height="auto" />
  1514. <RowDefinition Height="auto" />
  1515. <RowDefinition Height="auto" />
  1516. </Grid.RowDefinitions>
  1517. <Grid.Resources>
  1518. <Style TargetType="Button"
  1519. BasedOn="{StaticResource MaterialDesignRaisedDarkButton}">
  1520. <Setter Property="Width"
  1521. Value="60" />
  1522. <Setter Property="Height"
  1523. Value="60" />
  1524. <Setter Property="FontSize"
  1525. Value="13" />
  1526. <Setter Property="Padding"
  1527. Value="0" />
  1528. <Setter Property="HorizontalAlignment"
  1529. Value="Center" />
  1530. <Setter Property="VerticalAlignment"
  1531. Value="Center" />
  1532. <Setter Property="Margin"
  1533. Value="2" />
  1534. <Setter Property="materialDesign:ButtonAssist.CornerRadius"
  1535. Value="10" />
  1536. </Style>
  1537. </Grid.Resources>
  1538. <Button x:Name="btn_x"
  1539. Grid.Row="1"
  1540. Grid.Column="0"
  1541. Command="{Binding DataContext.JogCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}"
  1542. CommandParameter="{Binding ElementName=txtDistance,Path=Value,Converter={StaticResource JogConverter}, ConverterParameter=X-}">
  1543. <StackPanel Orientation="Vertical">
  1544. <materialDesign:PackIcon Kind="ArrowLeftBold"
  1545. Width="26"
  1546. Height="26" />
  1547. <TextBlock Text="-X"
  1548. HorizontalAlignment="Center" />
  1549. </StackPanel>
  1550. </Button>
  1551. <Button Grid.Row="1"
  1552. Grid.Column="2"
  1553. Command="{Binding DataContext.JogCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}"
  1554. CommandParameter="{Binding ElementName=txtDistance,Path=Value,Converter={StaticResource JogConverter}, ConverterParameter=X+}">
  1555. <StackPanel Orientation="Vertical">
  1556. <materialDesign:PackIcon Kind="ArrowRightBold"
  1557. Width="26"
  1558. Height="26" />
  1559. <TextBlock Text="+X"
  1560. HorizontalAlignment="Center" />
  1561. </StackPanel>
  1562. </Button>
  1563. <Button Grid.Row="0"
  1564. Grid.Column="1"
  1565. Command="{Binding DataContext.JogCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}"
  1566. CommandParameter="{Binding ElementName=txtDistance,Path=Value,Converter={StaticResource JogConverter}, ConverterParameter=Y+}">
  1567. <StackPanel Orientation="Vertical">
  1568. <materialDesign:PackIcon Kind="ArrowTopBold"
  1569. Width="26"
  1570. Height="26" />
  1571. <TextBlock Text="+Y"
  1572. HorizontalAlignment="Center" />
  1573. </StackPanel>
  1574. </Button>
  1575. <Button Grid.Row="2"
  1576. Grid.Column="1"
  1577. Command="{Binding DataContext.JogCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}"
  1578. CommandParameter="{Binding ElementName=txtDistance,Path=Value,Converter={StaticResource JogConverter}, ConverterParameter=Y-}">
  1579. <StackPanel Orientation="Vertical">
  1580. <materialDesign:PackIcon Kind="ArrowBottomBold"
  1581. Width="26"
  1582. Height="26" />
  1583. <TextBlock Text="-Y"
  1584. HorizontalAlignment="Center" />
  1585. </StackPanel>
  1586. </Button>
  1587. <Button Grid.Row="0"
  1588. Grid.Column="3"
  1589. Command="{Binding DataContext.JogCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}"
  1590. CommandParameter="{Binding ElementName=txtDistance,Path=Value,Converter={StaticResource JogConverter}, ConverterParameter=Z+}">
  1591. <StackPanel Orientation="Vertical">
  1592. <materialDesign:PackIcon Kind="ArrowTopBold"
  1593. Width="26"
  1594. Height="26" />
  1595. <TextBlock Text="+Z"
  1596. HorizontalAlignment="Center" />
  1597. </StackPanel>
  1598. </Button>
  1599. <Button Grid.Row="2"
  1600. Grid.Column="3"
  1601. Command="{Binding DataContext.JogCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}"
  1602. CommandParameter="{Binding ElementName=txtDistance,Path=Value,Converter={StaticResource JogConverter}, ConverterParameter=Z-}">
  1603. <StackPanel Orientation="Vertical">
  1604. <materialDesign:PackIcon Kind="ArrowBottomBold"
  1605. Width="26"
  1606. Height="26" />
  1607. <TextBlock Text="-Z"
  1608. HorizontalAlignment="Center" />
  1609. </StackPanel>
  1610. </Button>
  1611. <Button Grid.Row="3"
  1612. Grid.Column="0"
  1613. Command="{Binding DataContext.JogCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}"
  1614. CommandParameter="{Binding ElementName=txtDistance,Path=Value,Converter={StaticResource JogConverter}, ConverterParameter=U+}">
  1615. <StackPanel Orientation="Vertical">
  1616. <materialDesign:PackIcon Kind="AxisZRotateCounterclockwise"
  1617. Width="26"
  1618. Height="26" />
  1619. <TextBlock Text="+U"
  1620. HorizontalAlignment="Center" />
  1621. </StackPanel>
  1622. </Button>
  1623. <Button Grid.Row="4"
  1624. Grid.Column="0"
  1625. Command="{Binding DataContext.JogCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}"
  1626. CommandParameter="{Binding ElementName=txtDistance,Path=Value,Converter={StaticResource JogConverter}, ConverterParameter=U-}">
  1627. <StackPanel Orientation="Vertical">
  1628. <materialDesign:PackIcon Kind="AxisZRotateClockwise"
  1629. Width="26"
  1630. Height="26" />
  1631. <TextBlock Text="-U"
  1632. HorizontalAlignment="Center" />
  1633. </StackPanel>
  1634. </Button>
  1635. <Button Grid.Row="3"
  1636. Grid.Column="1"
  1637. Grid.ColumnSpan="2"
  1638. Command="{Binding DataContext.JogCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}"
  1639. CommandParameter="{Binding ElementName=txtDistance,Path=Value,Converter={StaticResource JogConverter}, ConverterParameter=R+}">
  1640. <StackPanel Orientation="Vertical">
  1641. <materialDesign:PackIcon Kind="AxisZRotateCounterclockwise"
  1642. Width="26"
  1643. Height="26" />
  1644. <TextBlock Text="+R"
  1645. HorizontalAlignment="Center" />
  1646. </StackPanel>
  1647. </Button>
  1648. <Button Grid.Row="4"
  1649. Grid.Column="1"
  1650. Grid.ColumnSpan="2"
  1651. Command="{Binding DataContext.JogCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}"
  1652. CommandParameter="{Binding ElementName=txtDistance,Path=Value,Converter={StaticResource JogConverter}, ConverterParameter=R-}">
  1653. <StackPanel Orientation="Vertical">
  1654. <materialDesign:PackIcon Kind="AxisZRotateClockwise"
  1655. Width="26"
  1656. Height="26" />
  1657. <TextBlock Text="-R"
  1658. HorizontalAlignment="Center" />
  1659. </StackPanel>
  1660. </Button>
  1661. <Grid Grid.Row="5"
  1662. Grid.ColumnSpan="7"
  1663. Margin="10">
  1664. <Grid.RowDefinitions>
  1665. <RowDefinition Height="auto" />
  1666. <RowDefinition Height="auto" />
  1667. <RowDefinition Height="auto" />
  1668. <RowDefinition Height="auto" />
  1669. </Grid.RowDefinitions>
  1670. <Grid.ColumnDefinitions>
  1671. <ColumnDefinition Width="auto" />
  1672. <ColumnDefinition Width="auto" />
  1673. <ColumnDefinition Width="auto" />
  1674. </Grid.ColumnDefinitions>
  1675. <TextBlock Grid.Row="0"
  1676. Grid.Column="0"
  1677. Text="{lex:Loc 步进距离,Converter={StaticResource StringFormatConverter},ConverterParameter='{}{0}: '}"
  1678. Margin="10"
  1679. VerticalAlignment="Center"
  1680. HorizontalAlignment="Right" />
  1681. <uControl:myNumericUpDowm x:Name="txtDistance"
  1682. Grid.Row="0"
  1683. Grid.Column="1"
  1684. MinWidth="100"
  1685. Value="{Binding DataContext.Distance,RelativeSource={RelativeSource AncestorType={x:Type UserControl}},Mode=TwoWay}"
  1686. Interval="0.1"
  1687. Minimum="0"
  1688. Maximum="100"
  1689. StringFormat="{}{0:N3} mm"
  1690. Margin="10"
  1691. materialDesign:HintAssist.Hint="{lex:Loc 步进距离}" />
  1692. <TextBlock Grid.Row="1"
  1693. Grid.Column="0"
  1694. Text="{lex:Loc 点编号,Converter={StaticResource StringFormatConverter},ConverterParameter='{}{0}: '}"
  1695. Margin="10"
  1696. VerticalAlignment="Center" />
  1697. <ComboBox x:Name="cmbSelectPoint"
  1698. Grid.Row="2"
  1699. Grid.Column="0"
  1700. MinWidth="80"
  1701. materialDesign:HintAssist.Hint="{lex:Loc 选择点}"
  1702. Margin="10,5"
  1703. ItemsSource="{Binding Points}"
  1704. SelectedItem="{Binding SelectedPointInComboBox,Mode=TwoWay}">
  1705. <ComboBox.ItemTemplate>
  1706. <DataTemplate>
  1707. <StackPanel HorizontalAlignment="Left"
  1708. Orientation="Horizontal">
  1709. <TextBlock Text="{Binding Number,StringFormat={}{0}:}" />
  1710. <TextBlock Text="{Binding Label}" />
  1711. </StackPanel>
  1712. </DataTemplate>
  1713. </ComboBox.ItemTemplate>
  1714. </ComboBox>
  1715. <TextBlock Grid.Row="1"
  1716. Grid.Column="1"
  1717. Text="{lex:Loc 动作指令,Converter={StaticResource StringFormatConverter},ConverterParameter='{}{0}: '}"
  1718. Margin="10"
  1719. VerticalAlignment="Center" />
  1720. <ComboBox x:Name="cmbSelectMotioncmd"
  1721. Grid.Row="2"
  1722. Grid.Column="1"
  1723. MinWidth="80"
  1724. Margin="10,5"
  1725. materialDesign:HintAssist.Hint="{lex:Loc 动作指令}"
  1726. ItemsSource="{ext:EnumBindingSource EnumType=enums:MotionCommand}"
  1727. SelectedItem="{Binding DataContext.SelectMotionCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}" />
  1728. <Button Grid.Row="2"
  1729. Grid.Column="2"
  1730. Content="{lex:Loc 执行动作}"
  1731. Margin="2"
  1732. Command="{Binding DataContext.ExecuteMotion,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}">
  1733. <Button.CommandParameter>
  1734. <MultiBinding Converter="{StaticResource MultiParameterConverter}">
  1735. <Binding ElementName="cmbSelectPoint"
  1736. Path="SelectedItem" />
  1737. <Binding ElementName="cmbSelectMotioncmd"
  1738. Path="SelectedItem" />
  1739. </MultiBinding>
  1740. </Button.CommandParameter>
  1741. </Button>
  1742. <Button Grid.Row="3"
  1743. Grid.Column="0"
  1744. Content="{lex:Loc 示教}"
  1745. Margin="2"
  1746. HorizontalAlignment="Right"
  1747. Command="{Binding DataContext.TechPointCommand,RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}" />
  1748. <!--<ToggleButton Grid.Row="3"
  1749. Grid.Column="2"
  1750. HorizontalAlignment="Right"
  1751. VerticalAlignment="Center"
  1752. Visibility="{Binding IsHaveRobot,Converter={StaticResource BooleanToVisibilityConverter}}"
  1753. materialDesign:ToggleButtonAssist.OnContent="{materialDesign:PackIcon Kind=ArrowRight}"
  1754. Content="{materialDesign:PackIcon Kind=ProgressWrench}"
  1755. Style="{StaticResource MaterialDesignActionToggleButton}"
  1756. ToolTip="{lex:Loc 手动验证流程}"
  1757. Margin="5,0"
  1758. IsChecked="{Binding IsRightDrawerOpen,ElementName=DrawerHost}" />-->
  1759. </Grid>
  1760. </Grid>
  1761. </Grid>
  1762. </Grid>
  1763. </Viewbox>
  1764. </Grid>
  1765. </Grid>
  1766. </materialDesign:DrawerHost>
  1767. <StackPanel Grid.Row="2"
  1768. Orientation="Horizontal"
  1769. HorizontalAlignment="Center"
  1770. VerticalAlignment="Center"
  1771. Margin="20">
  1772. <Button Content="{lex:Loc 下一步}"
  1773. IsEnabled="{Binding IsAllowEdit}"
  1774. MinWidth="100"
  1775. HorizontalAlignment="Center"
  1776. VerticalAlignment="Center"
  1777. materialDesign:ButtonAssist.CornerRadius="10"
  1778. Style="{StaticResource MaterialDesignRaisedButton}"
  1779. Command="{Binding NextCommand}" />
  1780. </StackPanel>
  1781. </Grid>
  1782. </UserControl>