TransporterElevatorTeachControl.xaml.cs 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355
  1. using MECF.Framework.Common.OperationCenter;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. using System.Windows;
  8. using System.Windows.Controls;
  9. using System.Windows.Data;
  10. using System.Windows.Documents;
  11. using System.Windows.Input;
  12. using System.Windows.Media;
  13. using System.Windows.Media.Imaging;
  14. using System.Windows.Navigation;
  15. using System.Windows.Shapes;
  16. namespace CyberX8_Themes.UserControls
  17. {
  18. /// <summary>
  19. /// TransporterElevatorTechControl.xaml 的交互逻辑
  20. /// </summary>
  21. public partial class TransporterElevatorTeachControl : UserControl
  22. {
  23. #region 属性
  24. public static readonly DependencyProperty ModuleNameProperty = DependencyProperty.Register("ModuleName", typeof(string), typeof(TransporterElevatorTeachControl),
  25. new FrameworkPropertyMetadata("", FrameworkPropertyMetadataOptions.AffectsRender));
  26. /// <summary>
  27. /// 模块名称
  28. /// </summary>
  29. public string ModuleName
  30. {
  31. get
  32. {
  33. return (string)this.GetValue(ModuleNameProperty);
  34. }
  35. set
  36. {
  37. this.SetValue(ModuleNameProperty, value);
  38. }
  39. }
  40. public static readonly DependencyProperty SavedPositionProperty = DependencyProperty.Register("SavedPosition", typeof(double), typeof(TransporterElevatorTeachControl),
  41. new FrameworkPropertyMetadata(0.00, FrameworkPropertyMetadataOptions.AffectsRender));
  42. /// <summary>
  43. /// 当前位置
  44. /// </summary>
  45. public double SavedPosition
  46. {
  47. get
  48. {
  49. return (double)this.GetValue(SavedPositionProperty);
  50. }
  51. set
  52. {
  53. SetValue(SavedPositionProperty, value);
  54. }
  55. }
  56. public static readonly DependencyProperty CurrentPositionProperty = DependencyProperty.Register("CurrentPosition", typeof(double), typeof(TransporterElevatorTeachControl),
  57. new FrameworkPropertyMetadata(0.00, FrameworkPropertyMetadataOptions.AffectsRender));
  58. /// <summary>
  59. /// 当前位置
  60. /// </summary>
  61. public double CurrentPosition
  62. {
  63. get
  64. {
  65. return (double)this.GetValue(CurrentPositionProperty);
  66. }
  67. set
  68. {
  69. SetValue(CurrentPositionProperty, value);
  70. }
  71. }
  72. public static readonly DependencyProperty CurrentStationProperty = DependencyProperty.Register("CurrentStation", typeof(string), typeof(TransporterElevatorTeachControl),
  73. new FrameworkPropertyMetadata("", FrameworkPropertyMetadataOptions.AffectsRender));
  74. /// <summary>
  75. /// 当前工位
  76. /// </summary>
  77. public string CurrentStation
  78. {
  79. get
  80. {
  81. return (string)this.GetValue(CurrentStationProperty);
  82. }
  83. set
  84. {
  85. this.SetValue(CurrentStationProperty, value);
  86. }
  87. }
  88. public static readonly DependencyProperty DegValueProperty = DependencyProperty.Register(
  89. "DegValue", typeof(double), typeof(TransporterElevatorTeachControl), new FrameworkPropertyMetadata(0.00, FrameworkPropertyMetadataOptions.AffectsRender));
  90. /// <summary>
  91. /// 调整数值
  92. /// </summary>
  93. public double DegValue
  94. {
  95. get
  96. {
  97. return (double)this.GetValue(DegValueProperty);
  98. }
  99. set
  100. {
  101. this.SetValue(DegValueProperty, value);
  102. }
  103. }
  104. public static readonly DependencyProperty IncrementValueProperty = DependencyProperty.Register(
  105. "IncrementValue", typeof(double), typeof(TransporterElevatorTeachControl), new FrameworkPropertyMetadata(0.00, FrameworkPropertyMetadataOptions.AffectsRender));
  106. /// <summary>
  107. /// 步进数值
  108. /// </summary>
  109. public double IncrementValue
  110. {
  111. get
  112. {
  113. return (double)this.GetValue(IncrementValueProperty);
  114. }
  115. set
  116. {
  117. this.SetValue(IncrementValueProperty, value);
  118. }
  119. }
  120. public static readonly DependencyProperty MovingProperty = DependencyProperty.Register(
  121. "Moving", typeof(bool), typeof(TransporterElevatorTeachControl), new FrameworkPropertyMetadata(false, FrameworkPropertyMetadataOptions.AffectsRender));
  122. /// <summary>
  123. /// Moving
  124. /// </summary>
  125. public bool Moving
  126. {
  127. get
  128. {
  129. return (bool)this.GetValue(MovingProperty);
  130. }
  131. set
  132. {
  133. this.SetValue(MovingProperty, value);
  134. }
  135. }
  136. public static readonly DependencyProperty IsSwitchOnProperty = DependencyProperty.Register(
  137. "IsSwitchOn", typeof(bool), typeof(TransporterElevatorTeachControl), new FrameworkPropertyMetadata(false, FrameworkPropertyMetadataOptions.AffectsRender));
  138. /// <summary>
  139. /// IsSwitch
  140. /// </summary>
  141. public bool IsSwitchOn
  142. {
  143. get
  144. {
  145. return (bool)this.GetValue(IsSwitchOnProperty);
  146. }
  147. set
  148. {
  149. this.SetValue(IsSwitchOnProperty, value);
  150. }
  151. }
  152. public static readonly DependencyProperty HomedProperty = DependencyProperty.Register(
  153. "Homed", typeof(bool), typeof(TransporterElevatorTeachControl), new FrameworkPropertyMetadata(false, FrameworkPropertyMetadataOptions.AffectsRender));
  154. /// <summary>
  155. /// Homed
  156. /// </summary>
  157. public bool Homed
  158. {
  159. get
  160. {
  161. return (bool)this.GetValue(HomedProperty);
  162. }
  163. set
  164. {
  165. this.SetValue(HomedProperty, value);
  166. }
  167. }
  168. public static readonly DependencyProperty TorqueLimitedProperty = DependencyProperty.Register(
  169. "TorqueLimited", typeof(bool), typeof(TransporterElevatorTeachControl), new FrameworkPropertyMetadata(true, FrameworkPropertyMetadataOptions.AffectsRender));
  170. /// <summary>
  171. /// TorqueLimited
  172. /// </summary>
  173. public bool TorqueLimited
  174. {
  175. get
  176. {
  177. return (bool)this.GetValue(TorqueLimitedProperty);
  178. }
  179. set
  180. {
  181. this.SetValue(TorqueLimitedProperty, value);
  182. }
  183. }
  184. public static readonly DependencyProperty PositiveHwSwitchedProperty = DependencyProperty.Register(
  185. "PositiveHwSwitched", typeof(bool), typeof(TransporterElevatorTeachControl), new FrameworkPropertyMetadata(false, FrameworkPropertyMetadataOptions.AffectsRender));
  186. /// <summary>
  187. /// PositiveHwSwitched
  188. /// </summary>
  189. public bool PositiveHwSwitched
  190. {
  191. get
  192. {
  193. return (bool)this.GetValue(PositiveHwSwitchedProperty);
  194. }
  195. set
  196. {
  197. this.SetValue(PositiveHwSwitchedProperty, value);
  198. }
  199. }
  200. public static readonly DependencyProperty NegativeHwSwitchedProperty = DependencyProperty.Register(
  201. "NegativeHwSwitched", typeof(bool), typeof(TransporterElevatorTeachControl), new FrameworkPropertyMetadata(false, FrameworkPropertyMetadataOptions.AffectsRender));
  202. /// <summary>
  203. /// NegativeHwSwitched
  204. /// </summary>
  205. public bool NegativeHwSwitched
  206. {
  207. get
  208. {
  209. return (bool)this.GetValue(NegativeHwSwitchedProperty);
  210. }
  211. set
  212. {
  213. this.SetValue(NegativeHwSwitchedProperty, value);
  214. }
  215. }
  216. public static readonly DependencyProperty PositiveSwSwitchedProperty = DependencyProperty.Register(
  217. "PositiveSwSwitched", typeof(bool), typeof(TransporterElevatorTeachControl), new FrameworkPropertyMetadata(false, FrameworkPropertyMetadataOptions.AffectsRender));
  218. /// <summary>
  219. /// PositiveSwSwitched
  220. /// </summary>
  221. public bool PositiveSwSwitched
  222. {
  223. get
  224. {
  225. return (bool)this.GetValue(PositiveSwSwitchedProperty);
  226. }
  227. set
  228. {
  229. this.SetValue(PositiveSwSwitchedProperty, value);
  230. }
  231. }
  232. public static readonly DependencyProperty NegativeSwSwitchedProperty = DependencyProperty.Register(
  233. "NegativeSwSwitched", typeof(bool), typeof(TransporterElevatorTeachControl), new FrameworkPropertyMetadata(false, FrameworkPropertyMetadataOptions.AffectsRender));
  234. /// <summary>
  235. /// NegativeSwSwitched
  236. /// </summary>
  237. public bool NegativeSwSwitched
  238. {
  239. get
  240. {
  241. return (bool)this.GetValue(NegativeSwSwitchedProperty);
  242. }
  243. set
  244. {
  245. this.SetValue(NegativeSwSwitchedProperty, value);
  246. }
  247. }
  248. public static readonly DependencyProperty ReadyToLock1Property = DependencyProperty.Register(
  249. "ReadyToLock1", typeof(bool), typeof(TransporterElevatorTeachControl), new FrameworkPropertyMetadata(false, FrameworkPropertyMetadataOptions.AffectsRender));
  250. /// <summary>
  251. /// ReadyToLock1
  252. /// </summary>
  253. public bool ReadyToLock1
  254. {
  255. get
  256. {
  257. return (bool)this.GetValue(ReadyToLock1Property);
  258. }
  259. set
  260. {
  261. this.SetValue(ReadyToLock1Property, value);
  262. }
  263. }
  264. public static readonly DependencyProperty ReadyToLock2Property = DependencyProperty.Register(
  265. "ReadyToLock2", typeof(bool), typeof(TransporterElevatorTeachControl), new FrameworkPropertyMetadata(false, FrameworkPropertyMetadataOptions.AffectsRender));
  266. /// <summary>
  267. /// ReadyToLock2
  268. /// </summary>
  269. public bool ReadyToLock2
  270. {
  271. get
  272. {
  273. return (bool)this.GetValue(ReadyToLock2Property);
  274. }
  275. set
  276. {
  277. this.SetValue(ReadyToLock2Property, value);
  278. }
  279. }
  280. public static readonly DependencyProperty WaferPresent1Property = DependencyProperty.Register(
  281. "WaferPresent1", typeof(bool), typeof(TransporterElevatorTeachControl), new FrameworkPropertyMetadata(false, FrameworkPropertyMetadataOptions.AffectsRender));
  282. /// <summary>
  283. /// WaferPresent1
  284. /// </summary>
  285. public bool WaferPresent1
  286. {
  287. get
  288. {
  289. return (bool)this.GetValue(WaferPresent1Property);
  290. }
  291. set
  292. {
  293. this.SetValue(WaferPresent1Property, value);
  294. }
  295. }
  296. public static readonly DependencyProperty WaferPresent2Property = DependencyProperty.Register(
  297. "WaferPresent2", typeof(bool), typeof(TransporterElevatorTeachControl), new FrameworkPropertyMetadata(false, FrameworkPropertyMetadataOptions.AffectsRender));
  298. /// <summary>
  299. /// WaferPresent2
  300. /// </summary>
  301. public bool WaferPresent2
  302. {
  303. get
  304. {
  305. return (bool)this.GetValue(WaferPresent2Property);
  306. }
  307. set
  308. {
  309. this.SetValue(WaferPresent2Property, value);
  310. }
  311. }
  312. #endregion
  313. public TransporterElevatorTeachControl()
  314. {
  315. InitializeComponent();
  316. }
  317. private void ElevatorUp_Click(object sender, RoutedEventArgs e)
  318. {
  319. InvokeClient.Instance.Service.DoOperation($"{GetParentModuleName()}.ElevatorUp");
  320. }
  321. private void ElevatorLow_Click(object sender, RoutedEventArgs e)
  322. {
  323. InvokeClient.Instance.Service.DoOperation($"{GetParentModuleName()}.ElevatorLow");
  324. }
  325. /// <summary>
  326. /// 获取根级模块名称
  327. /// </summary>
  328. /// <returns></returns>
  329. private string GetParentModuleName()
  330. {
  331. string[] strAry = ModuleName.Split('.');
  332. return strAry[0];
  333. }
  334. }
  335. }