MFC4Process.xaml.cs 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Windows;
  6. using System.Windows.Controls;
  7. using System.Windows.Data;
  8. using System.Windows.Documents;
  9. using System.Windows.Input;
  10. using System.Windows.Media;
  11. using System.Windows.Media.Imaging;
  12. using System.Windows.Navigation;
  13. using System.Windows.Shapes;
  14. using System.Runtime.Serialization;
  15. using Aitex.Core.Util;
  16. using Aitex.Core.UI.ControlDataContext;
  17. namespace Aitex.Core.UI.Control
  18. {
  19. /// <summary>
  20. /// Interaction logic for MFC4Process.xaml
  21. /// </summary>
  22. public partial class MFC4Process : UserControl
  23. {
  24. public MFC4Process()
  25. {
  26. InitializeComponent();
  27. }
  28. MOSourceDataItem AirFlowMoLineData { get { return (this.DataContext as MOSourceDataItem); } }
  29. // public static readonly DependencyProperty SourceMFCProperty = DependencyProperty.Register(
  30. // "SourceMFC", typeof(AnalogDeviceDataItem), typeof(MFC4Process),
  31. // new FrameworkPropertyMetadata(null, FrameworkPropertyMetadataOptions.AffectsRender));
  32. // public AnalogDeviceDataItem SourceMFC
  33. // {
  34. // get
  35. // {
  36. // return (AnalogDeviceDataItem)this.GetValue(SourceMFCProperty);
  37. // }
  38. // set
  39. // {
  40. // this.SetValue(SourceMFCProperty, value);
  41. // }
  42. // }
  43. // public static readonly DependencyProperty Source2MFCProperty = DependencyProperty.Register(
  44. // "Source2MFC", typeof(AnalogDeviceDataItem), typeof(MFC4Process),
  45. // new FrameworkPropertyMetadata(null, FrameworkPropertyMetadataOptions.AffectsRender));
  46. // public AnalogDeviceDataItem Source2MFC
  47. // {
  48. // get
  49. // {
  50. // return (AnalogDeviceDataItem)this.GetValue(Source2MFCProperty);
  51. // }
  52. // set
  53. // {
  54. // this.SetValue(Source2MFCProperty, value);
  55. // }
  56. // }
  57. // public static readonly DependencyProperty InjectMFCProperty = DependencyProperty.Register(
  58. //"InjectMFC", typeof(AnalogDeviceDataItem), typeof(MFC4Process),
  59. //new FrameworkPropertyMetadata(null, FrameworkPropertyMetadataOptions.AffectsRender));
  60. // public AnalogDeviceDataItem InjectMFC
  61. // {
  62. // get
  63. // {
  64. // return (AnalogDeviceDataItem)this.GetValue(InjectMFCProperty);
  65. // }
  66. // set
  67. // {
  68. // this.SetValue(InjectMFCProperty, value);
  69. // }
  70. // }
  71. // public static readonly DependencyProperty DiluteMFCProperty = DependencyProperty.Register(
  72. //"DiluteMFC", typeof(AnalogDeviceDataItem), typeof(MFC4Process),
  73. //new FrameworkPropertyMetadata(null, FrameworkPropertyMetadataOptions.AffectsRender));
  74. // public AnalogDeviceDataItem DiluteMFC
  75. // {
  76. // get
  77. // {
  78. // return (AnalogDeviceDataItem)this.GetValue(DiluteMFCProperty);
  79. // }
  80. // set
  81. // {
  82. // this.SetValue(DiluteMFCProperty, value);
  83. // }
  84. // }
  85. // public bool IsMultiControlMFC{get;set;}
  86. // protected override void OnRender(DrawingContext drawingContext)
  87. // {
  88. // base.OnRender(drawingContext);
  89. // StringBuilder tooltip = new StringBuilder();
  90. // Brush borderBrush = Brushes.Black;
  91. // string content = "";
  92. // if (IsMultiControlMFC)
  93. // {
  94. // if (SourceMFC == null) return;
  95. // var source = SourceMFC.FeedBack;
  96. // var inject = InjectMFC.FeedBack;
  97. // var dilute = DiluteMFC.FeedBack;
  98. // var source2 = Source2MFC == null ? 0 : Source2MFC.FeedBack;
  99. // var flow = source + source2 + dilute;
  100. // if (flow == 0)
  101. // {
  102. // content = "0.00";
  103. // }
  104. // else
  105. // {
  106. // double val = ((source * inject) / flow);
  107. // content = val >= 10 ? val.ToString("0.0") : val.ToString("0.00");
  108. // }
  109. // if (SourceMFC.IsWarning) { borderBrush = Brushes.Red; tooltip.AppendLine(string.Format("mfc:{0},设备名:{1} 报警! 流量:{2}", SourceMFC.DeviceId, SourceMFC.DeviceName, SourceMFC.FeedBack.ToString("F1"))); }
  110. // if (InjectMFC.IsWarning) { borderBrush = Brushes.Red; tooltip.AppendLine(string.Format("mfc:{0},设备名:{1} 报警! 流量:{2}", InjectMFC.DeviceId, InjectMFC.DeviceName, InjectMFC.FeedBack.ToString("F1"))); }
  111. // if (DiluteMFC.IsWarning) { borderBrush = Brushes.Red; tooltip.AppendLine(string.Format("mfc:{0},设备名:{1} 报警! 流量:{2}", DiluteMFC.DeviceId, DiluteMFC.DeviceName, DiluteMFC.FeedBack.ToString("F1"))); }
  112. // }
  113. // else
  114. // {
  115. // if (SourceMFC != null && SourceMFC.IsWarning) { borderBrush = Brushes.Red; tooltip.AppendLine(string.Format("mfc:{0},设备名:{1} 报警! 流量:{2}", SourceMFC.DeviceId, SourceMFC.DeviceName, SourceMFC.FeedBack.ToString("F1"))); }
  116. // content = OptimizeFeedBack(SourceMFC);
  117. // }
  118. // btnLiuLiang.Foreground = borderBrush;
  119. // btnLiuLiang.BorderBrush = borderBrush;
  120. // btnLiuLiang.Content = content;
  121. // if (tooltip.Length > 0)
  122. // btnLiuLiang.ToolTip = tooltip.ToString();
  123. // else
  124. // btnLiuLiang.ToolTip = null;
  125. // }
  126. // string OptimizeFeedBack(AnalogDeviceDataItem mfc)
  127. // {
  128. // if (mfc == null) return "-";
  129. // if (mfc.FeedBack >= 10000)
  130. // return mfc.FeedBack.ToString("F0");
  131. // else if (mfc.FeedBack >= 10)
  132. // return mfc.FeedBack.ToString("0.0");
  133. // else
  134. // return mfc.FeedBack.ToString("0.00");
  135. // }
  136. }
  137. }