123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146 |
- 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.FlexRay
- {
- [System.ComponentModel.ToolboxItem(false)]
- public partial class FlexRayTriggerSetControl : UserControl, ITriggerSerialView
- {
- #region 属性定义
- protected new Boolean DesignMode
- {
- get
- {
- Boolean rtnflag = false;
- #if DEBUG
- rtnflag = DesignTimeHelper.InDesignMode(this);
- #endif
- return rtnflag;
- }
- }
- public FlexRayTrigSerialPrsnt Presenter
- {
- get => (FlexRayTrigSerialPrsnt)(ParentForm as ITriggerView).Presenter;
- set => (ParentForm as ITriggerView).Presenter = value;
- }
- ITriggerPrsnt IView<ITriggerPrsnt>.Presenter
- {
- get => Presenter;
- set => Presenter = (FlexRayTrigSerialPrsnt)value;
- }
- private FlexRayCycleDataPage _CycleDataPage = new FlexRayCycleDataPage();
- private FlexRayIDPage _IDPage = new FlexRayIDPage();
- private FlexRayDataPage _DataPage = new FlexRayDataPage();
- private FlexRayIndicatorPage _IndicatorPage = new FlexRayIndicatorPage();
- private FlexRayErrorPage _ErrorPage = new FlexRayErrorPage();
- private FlexRayFrameTailPage _FrameTailPage = new FlexRayFrameTailPage();
- #endregion 属性定义
- public FlexRayTriggerSetControl()
- {
- InitializeComponent();
- }
- protected override void OnLoad(EventArgs e)
- {
- base.OnLoad(e);
- InitView();
- Init();
- }
-
- private void Init()
- {
- }
- private void InitView()
- {
- _DataPage.Presenter = Presenter;
- this.TlpPanel.Controls.Add(_DataPage, 0, 1);
- _IDPage.Presenter = Presenter;
- this.TlpPanel.Controls.Add(_IDPage, 0, 2);
- _IndicatorPage.Presenter = Presenter;
- this.TlpPanel.Controls.Add(_IndicatorPage, 0, 3);
- _CycleDataPage.Presenter = Presenter;
- this.TlpPanel.Controls.Add(_CycleDataPage, 0, 4);
- _ErrorPage.Presenter = Presenter;
- this.TlpPanel.Controls.Add(_ErrorPage, 0, 5);
- _FrameTailPage.Presenter = Presenter;
- this.TlpPanel.Controls.Add(_FrameTailPage, 0, 6);
- this.TlpPanel.Controls.Cast<Control>().ToList().ForEach(x =>
- {
- x.Dock = DockStyle.Fill;
- });
- Presenter.TryAddView(_DataPage);
- Presenter.TryAddView(_IDPage);
- Presenter.TryAddView(_IndicatorPage);
- Presenter.TryAddView(_CycleDataPage);
- Presenter.TryAddView(_ErrorPage);
- Presenter.TryAddView(_FrameTailPage);
- UpdateCondition();
- }
- public void UpdateView(Object presenter, String propertyName)
- {
- switch (propertyName)
- {
- case nameof(FlexRayTrigSerialPrsnt.Condition):
- UpdateCondition();
- break;
- }
- }
- [UpdateProperty(nameof(FlexRayTrigSerialPrsnt.Condition))]
- private void UpdateCondition()
- {
- TlpPanel.Controls.Cast<Control>().ToList().ForEach(x => x.Visible = false);
- switch (Presenter.Condition)
- {
- case ProtocolFlexRay.Condition.Circulate:
- _CycleDataPage.Visible = true;
- break;
- case ProtocolFlexRay.Condition.ID:
- _IDPage.Visible = true;
- break;
- case ProtocolFlexRay.Condition.Data:
- _DataPage.Visible = true;
- break;
- case ProtocolFlexRay.Condition.Indicator:
- _IndicatorPage.Visible = true;
- break;
- case ProtocolFlexRay.Condition.IDAndData:
- _DataPage.Visible = true;
- _IDPage.Visible = true;
- break;
- case ProtocolFlexRay.Condition.Error:
- _ErrorPage.Visible = true;
- break;
- case ProtocolFlexRay.Condition.FrameTail:
- _FrameTailPage.Visible = true;
- break;
- }
- this.Height = this.TlpPanel.PreferredSize.Height;
- }
- }
- }
|