HeaterView.xaml.cs 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. using Aitex.Core.Common.DeviceData;
  2. using MECF.Framework.Common.DataCenter;
  3. using MECF.Framework.Common.OperationCenter;
  4. using System;
  5. using System.Windows;
  6. using System.Windows.Threading;
  7. namespace Venus_MainPages.Views
  8. {
  9. /// <summary>
  10. /// HeaterView.xaml 的交互逻辑
  11. /// </summary>
  12. public partial class HeaterView : Window
  13. {
  14. private string ModuleName = "PMA";
  15. public HeaterView(AITHeaterData heaterData)
  16. {
  17. DataContext = this;
  18. HeaterData = heaterData;
  19. InitializeComponent();
  20. DispatcherTimer timer = new DispatcherTimer();
  21. timer.Interval = TimeSpan.FromSeconds(0.5);
  22. timer.Tick += timer_Tick;
  23. timer.Start();
  24. }
  25. void timer_Tick(object sender, EventArgs e)
  26. {
  27. HeaterData = (AITHeaterData)QueryDataClient.Instance.Service.GetData($"{ModuleName}.{HeaterData.DeviceName}.DeviceData");
  28. }
  29. public static readonly DependencyProperty HeaterDataProperty = DependencyProperty.Register(
  30. "HeaterData", typeof(AITHeaterData), typeof(HeaterView));
  31. public AITHeaterData HeaterData
  32. {
  33. get
  34. {
  35. return (AITHeaterData)this.GetValue(HeaterDataProperty);
  36. }
  37. set
  38. {
  39. this.SetValue(HeaterDataProperty, value);
  40. }
  41. }
  42. private void ButtonSet_Click(object sender, RoutedEventArgs e)
  43. {
  44. //float setpoint = (float)Convert.ToDouble(inputBox.Text);
  45. InvokeClient.Instance.Service.DoOperation($"{ModuleName}.{HeaterData.DeviceName}.{AITHeaterOperation.Ramp}", inputBox.Text);
  46. }
  47. private void ButtonCancel_Click(object sender, RoutedEventArgs e)
  48. {
  49. this.Close();
  50. }
  51. private void ButtonHeaterOn_Click(object sender, RoutedEventArgs e)
  52. {
  53. InvokeClient.Instance.Service.DoOperation($"{ModuleName}.{HeaterData.DeviceName}.{AITHeaterOperation.SetPowerOnOff}", true);
  54. }
  55. private void ButtonHeaterOff_Click(object sender, RoutedEventArgs e)
  56. {
  57. InvokeClient.Instance.Service.DoOperation($"{ModuleName}.{HeaterData.DeviceName}.{AITHeaterOperation.SetPowerOnOff}", false);
  58. }
  59. }
  60. }