81 lines
2.6 KiB
C#
81 lines
2.6 KiB
C#
|
using System;
|
|||
|
using System.Collections.Generic;
|
|||
|
using System.Linq;
|
|||
|
using System.Text;
|
|||
|
using System.Windows;
|
|||
|
using System.Windows.Controls;
|
|||
|
using System.Windows.Data;
|
|||
|
using System.Windows.Documents;
|
|||
|
using System.Windows.Input;
|
|||
|
using System.Windows.Media;
|
|||
|
using System.Windows.Media.Imaging;
|
|||
|
using System.Windows.Navigation;
|
|||
|
using System.Windows.Shapes;
|
|||
|
using System.ComponentModel;
|
|||
|
using Aitex.Core.Util;
|
|||
|
using Aitex.Core.UI.ControlDataContext;
|
|||
|
|
|||
|
namespace Aitex.Core.UI.Control
|
|||
|
{
|
|||
|
/// <summary>
|
|||
|
/// Interaction logic for Bath.xaml
|
|||
|
/// </summary>
|
|||
|
public partial class Bath : UserControl
|
|||
|
{
|
|||
|
public Bath()
|
|||
|
{
|
|||
|
InitializeComponent();
|
|||
|
}
|
|||
|
|
|||
|
//BathDataItem MoLineData { get { return (this.DataContext as MOSourceDataItem).BathData; } }
|
|||
|
|
|||
|
public static readonly DependencyProperty DeviceDataProperty = DependencyProperty.Register(
|
|||
|
"DeviceData", typeof(BathDataItem), typeof(Bath),
|
|||
|
new FrameworkPropertyMetadata(null, FrameworkPropertyMetadataOptions.AffectsRender));
|
|||
|
public BathDataItem DeviceData
|
|||
|
{
|
|||
|
get
|
|||
|
{
|
|||
|
return (BathDataItem)this.GetValue(DeviceDataProperty);
|
|||
|
}
|
|||
|
set
|
|||
|
{
|
|||
|
this.SetValue(DeviceDataProperty, value);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
protected override void OnRender(DrawingContext drawingContext)
|
|||
|
{
|
|||
|
if (DeviceData == null) return;
|
|||
|
|
|||
|
lblBathTemperature.Content = DeviceData.TemperatureReading + "℃";
|
|||
|
|
|||
|
if (DeviceData.IsCommErr || DeviceData.IsLevelWarning || DeviceData.IsOutofTempRange || DeviceData.IsCutoffAlarm)
|
|||
|
{
|
|||
|
if (cavBath.Background != Brushes.Red)
|
|||
|
cavBath.Background = Brushes.Red;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
if (cavBath.Background != Brushes.SkyBlue)
|
|||
|
cavBath.Background = Brushes.SkyBlue;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
private void OnMouseEnter(object sender, MouseEventArgs e)
|
|||
|
{
|
|||
|
if (DeviceData == null) return;
|
|||
|
|
|||
|
string tooltipStr = string.Format("{0}\n\n通信状态:{1}\n水位状态:{2}\n温度监测:{3}\n水槽温度:{4} ℃\n水槽切断:{5}",
|
|||
|
DeviceData.BathName,
|
|||
|
DeviceData.IsCommErr ? "异常" : "正常",
|
|||
|
DeviceData.IsLevelWarning ? "异常" : "正常",
|
|||
|
DeviceData.IsOutofTempRange ? "异常" : "正常",
|
|||
|
DeviceData.TemperatureReading.ToString("F1"),
|
|||
|
DeviceData.IsCutoffAlarm ? "异常" : "正常");
|
|||
|
|
|||
|
this.ToolTip = tooltipStr;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|