123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123 |
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows.Forms;
- using Uestc.Auto6.Dso.Core;
- using Uni_Trend.MSO7000X.Language;
- using Uni_Trend.MSO7000X.Common.Helper;
- using Uni_Trend.MSO7000X.UserControls;
- using Uestc.Auto6.Dso.ComModel;
- using Uestc.Auto6.Dso.Core.Decode;
- namespace Uestc.Auto6.Dso.Protocol.USB
- {
- [System.ComponentModel.ToolboxItem(false)]
- public partial class USBTriggerSetControl : UserControl, ITriggerSerialView
- {
- #region 属性定义
- protected new Boolean DesignMode
- {
- get
- {
- Boolean rtnflag = false;
- #if DEBUG
- rtnflag = DesignTimeHelper.InDesignMode(this);
- #endif
- return rtnflag;
- }
- }
- public USBTrigSerialPrsnt Presenter
- {
- get => (USBTrigSerialPrsnt)(ParentForm as ITriggerView).Presenter;
- set => (ParentForm as ITriggerView).Presenter = value;
- }
- ITriggerPrsnt IView<ITriggerPrsnt>.Presenter
- {
- get => Presenter;
- set => Presenter = (USBTrigSerialPrsnt)value;
- }
- private IProtocolView _DecodeView = new USBSetControl();
- private USBDataPackagePage _USBDataPackagePage = new USBDataPackagePage();
- private USBErrorPackagePage _USBErrorPackagePage = new USBErrorPackagePage();
- private USBHandPackagePage _USBHandPackagePage = new USBHandPackagePage();
- private USBTokenPackagePage _USBTokenPackagePage = new USBTokenPackagePage();
- private SpecialPacketPage _SpecialPacketPage = new SpecialPacketPage();
- #endregion 属性定义
- public USBTriggerSetControl()
- {
- InitializeComponent();
- }
- protected override void OnLoad(EventArgs e)
- {
- base.OnLoad(e);
- InitView();
- }
- private void InitView()
- {
- _USBDataPackagePage.Presenter = Presenter;
- this.TlpPanel.Controls.Add(_USBDataPackagePage, 0, 0);
- _USBErrorPackagePage.Presenter = Presenter;
- this.TlpPanel.Controls.Add(_USBErrorPackagePage, 0, 1);
- _USBHandPackagePage.Presenter = Presenter;
- this.TlpPanel.Controls.Add(_USBHandPackagePage, 0, 2);
- _USBTokenPackagePage.Presenter = Presenter;
- this.TlpPanel.Controls.Add(_USBTokenPackagePage, 0, 3);
- _SpecialPacketPage.Presenter = Presenter;
- this.TlpPanel.Controls.Add(_SpecialPacketPage, 0, 4);
- this.TlpPanel.Controls.Cast<Control>().Where(x=> x is ITriggerSerialView).Cast<ITriggerSerialView>().ToList().ForEach(x =>
- {
- (x as Control).Dock = DockStyle.Fill;
- Presenter.TryAddView(x);
- });
- UpdateCondition();
- }
- public void UpdateView(Object presenter, String propertyName)
- {
- if (String.IsNullOrEmpty(propertyName) || propertyName == nameof(ARINC429TrigSerialPrsnt.Condition))
- {
- UpdateCondition();
- }
- }
- private void UpdateCondition()
- {
- this.TlpPanel.Controls.Cast<Control>().ToList().ForEach(x => x.Visible = false);
- switch (Presenter.Condition)
- {
- case ProtocolUSB.Condition.DataPackage:
- _USBDataPackagePage.Visible = true;
- break;
- case ProtocolUSB.Condition.Error:
- _USBErrorPackagePage.Visible = true;
- break;
- case ProtocolUSB.Condition.HandshakePackage:
- _USBHandPackagePage.Visible = true;
- break;
- case ProtocolUSB.Condition.TokenPackage:
- _USBTokenPackagePage.Visible = true;
- break;
- case ProtocolUSB.Condition.Special:
- _SpecialPacketPage.Visible = true;
- break;
- }
- Height = this.TlpPanel.PreferredSize.Height;
- }
- }
- }
|