MarkingMonitor.xaml.cs 3.58 KB
using HHECS.BLL.EquipmentExcute.Marking;
using HHECS.Model.Enums.Machine;
using System.Collections.Generic;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Media;

namespace HHECS.WinCommon.Controls
{
    /// <summary>
    /// MarkingMonitor.xaml 的交互逻辑
    /// </summary>
    public partial class MarkingMonitor : UserControl
    {
        public MarkingMonitor(string LineCode)
        {
            InitializeComponent();
            Init(LineCode);
        }

        public MarkingMonitor(List<string> lines)
        {

            InitializeComponent();
            //Init(lines);

        }
        void Init(List<string> lines)
        {
            //foreach (var line in lines)
            //{
            //    DockPanel panel = new DockPanel();
            //    Label label = new Label();
            //    Border border = new Border();
            //    panel.Margin = new Thickness(15);
            //    label.Content = $"{line}状态:";
            //    border.Width = border.Height = 10;
            //    border.Background = Brushes.Red;
            //    border.CornerRadius = new CornerRadius(5);
            //    panel.Children.Add(label);
            //    panel.Children.Add(border);
            //    Marking_Panel.Children.Add(panel);
            //}

        }
        void Init(string LineCode)
        {
            stp_line01.Visibility = Visibility.Visible;
            stp_freeline01.Visibility = Visibility.Visible;
            stp_line02.Visibility = Visibility.Visible;
            stp_freeline02.Visibility = Visibility.Visible;
        }

        /// <summary>
        /// key :线体code ,value:ip 地址
        /// </summary>
        /// <param name="dicMarking"></param>
        public void SetMarkingStatus()
        {

            this.bor_line01.Background = SendDataToMarking.tcpClient == null ? Brushes.Gray : SendDataToMarking.tcpClient.Connected ? Brushes.Green : Brushes.Gray;
            // this.bor_line01.Background = SendDataToMarking.CheckTCPOnLine(item.Value.Code, item.Value.Value) ? Brushes.Green : Brushes.Gray;
            switch (SendDataToMarking.markingFlag)
            {
                case MarkingFlagTocx.空闲:
                    this.bor_freeline01.Background = Brushes.Green;
                    break;
                case MarkingFlagTocx.打标中:
                    this.bor_freeline01.Background = Brushes.Red;
                    break;
                case MarkingFlagTocx.打标完成:
                    this.bor_freeline01.Background = Brushes.Yellow;
                    break;
                default:
                    this.bor_freeline01.Background = Brushes.Gray;
                    break;
            }

            this.bor_line02.Background = SendDataTo.tcpClient == null ? Brushes.Gray : SendDataTo.tcpClient.Connected ? Brushes.Green : Brushes.Gray;
            //this.bor_line01.Background = SendDataTo.CheckTCPOnLine(item.Value.Code, item.Value.Value) ? Brushes.Green : Brushes.Gray;
            switch (SendDataTo.markingFlag)
            {
                case MarkingFlag.空闲:
                    this.bor_freeline02.Background = Brushes.Green;
                    break;
                case MarkingFlag.打标中:
                    this.bor_freeline02.Background = Brushes.Red;
                    break;
                case MarkingFlag.打标完成:
                    this.bor_freeline02.Background = Brushes.Yellow;
                    break;
                default:
                    this.bor_freeline02.Background = Brushes.Gray;
                    break;
            }
        
        }




    }

}