namespace Yw.WinFrmUI
|
{
|
public partial class SetHydroValveWorkingInfoCtrl : DevExpress.XtraEditors.XtraUserControl, ISetHydroParterWorkingInfoCtrl
|
{
|
public SetHydroValveWorkingInfoCtrl()
|
{
|
InitializeComponent();
|
this.layoutControl1.SetupLayoutControl();
|
InitialLinkStatus();
|
}
|
|
/// <summary>
|
/// 查看组件事件
|
/// </summary>
|
public event Action<Yw.Model.HydroParterInfo> HydroViewEvent;
|
|
private Yw.Model.HydroValveInfo _parter = null;//组件
|
private HydroValveWorkingInfoViewModel _workingInfo = null;//工况
|
|
/// <summary>
|
/// 绑定数据
|
/// </summary>
|
public void SetBindingData(Yw.Model.HydroParterInfo parter)
|
{
|
var valve = parter as Yw.Model.HydroValveInfo;
|
if (valve == null)
|
{
|
return;
|
}
|
_parter = valve;
|
this.layoutGroupCaption.Text = HydroParterCatalogHelper.GetCatalogName(Yw.Hydro.ParterCatalog.Valve);
|
if (!string.IsNullOrEmpty(parter.Name))
|
{
|
this.layoutGroupCaption.Text = parter.Name;
|
}
|
_workingInfo = new HydroValveWorkingInfoViewModel(valve);
|
UpdateBindingData(_workingInfo);
|
}
|
|
/// <summary>
|
/// 更新绑定
|
/// </summary>
|
public void UpdateBindingData(HydroParterWorkingInfoViewModel workingInfo)
|
{
|
if (_parter == null)
|
{
|
return;
|
}
|
_workingInfo = workingInfo as HydroValveWorkingInfoViewModel;
|
if (_workingInfo == null)
|
{
|
return;
|
}
|
this.imgCmbLinkStatus.EditValue = _workingInfo.LinkStatus;
|
this.txtOpeningDegree.EditValue = _workingInfo.OpeningDegree;
|
if (_parter.ValveType == Yw.Hydro.ValveType.TCV)
|
{
|
this.txtOpeningDegree.Properties.ReadOnly = false;
|
}
|
else
|
{
|
this.txtOpeningDegree.Properties.ReadOnly = true;
|
}
|
}
|
|
/// <summary>
|
/// 获取工况
|
/// </summary>
|
public HydroParterWorkingInfoViewModel GetWorkingInfo()
|
{
|
if (_workingInfo == null)
|
{
|
return default;
|
}
|
_workingInfo.LinkStatus = this.imgCmbLinkStatus.EditValue?.ToString();
|
_workingInfo.OpeningDegree = double.Parse(this.txtOpeningDegree.EditValue.ToString());
|
return _workingInfo;
|
}
|
|
//初始化管段状态
|
private void InitialLinkStatus()
|
{
|
this.imgCmbLinkStatus.Properties.BeginUpdate();
|
this.imgCmbLinkStatus.Properties.Items.Clear();
|
this.imgCmbLinkStatus.Properties.Items.Add(HydroLinkStatusHelper.GetStatusName(Yw.Hydro.ValveStatus.None), Yw.Hydro.ValveStatus.None, -1);
|
this.imgCmbLinkStatus.Properties.Items.Add(HydroLinkStatusHelper.GetStatusName(Yw.Hydro.ValveStatus.Open), Yw.Hydro.ValveStatus.Open, -1);
|
this.imgCmbLinkStatus.Properties.Items.Add(HydroLinkStatusHelper.GetStatusName(Yw.Hydro.ValveStatus.Closed), Yw.Hydro.ValveStatus.Closed, -1);
|
this.imgCmbLinkStatus.Properties.EndUpdate();
|
}
|
|
//查看部件
|
private void layoutGroupCaption_CustomButtonClick(object sender, DevExpress.XtraBars.Docking2010.BaseButtonEventArgs e)
|
{
|
if (_parter == null)
|
{
|
return;
|
}
|
this.HydroViewEvent?.Invoke(_parter);
|
}
|
|
|
|
}
|
}
|