namespace Yw.WinFrmUI
{
public partial class SetHydroFlowmeterWorkingInfoCtrl : DevExpress.XtraEditors.XtraUserControl, ISetHydroParterWorkingInfoCtrl
{
public SetHydroFlowmeterWorkingInfoCtrl()
{
InitializeComponent();
this.layoutControl1.SetupLayoutControl();
}
//200,80
///
/// 查看组件事件
///
public event Action HydroViewEvent;
private Yw.Model.HydroParterInfo _parter = null;//构件
private HydroFlowmeterWorkingInfoViewModel _workingInfo = null;//工况信息
///
/// 绑定数据
///
public void SetBindingData(Yw.Model.HydroParterInfo parter)
{
var flowmeter = parter as Yw.Model.HydroFlowmeterInfo;
if (flowmeter == null)
{
return;
}
_parter = flowmeter;
this.layoutGroupCaption.Text = HydroParterCatalogHelper.GetName(Yw.Hydro.ParterCatalog.Flowmeter);
if (!string.IsNullOrEmpty(parter.Name))
{
this.layoutGroupCaption.Text = parter.Name;
}
_workingInfo = new HydroFlowmeterWorkingInfoViewModel(flowmeter);
UpdateBindingData(_workingInfo);
}
///
/// 更新绑定
///
public void UpdateBindingData(HydroParterWorkingInfoViewModel workingInfo)
{
if (_parter == null)
{
return;
}
_workingInfo = workingInfo as HydroFlowmeterWorkingInfoViewModel;
if (_workingInfo == null)
{
return;
}
this.txtCurrentFlow.EditValue = _workingInfo.CurrentFlow;
}
///
/// 获取工况
///
public HydroParterWorkingInfoViewModel GetWorkingInfo()
{
if (_workingInfo == null)
{
return default;
}
_workingInfo.CurrentFlow = this.txtCurrentFlow.EditValue == null ? null : double.Parse(this.txtCurrentFlow.EditValue.ToString());
return _workingInfo;
}
//查看组件
private void layoutGroupCaption_CustomButtonClick(object sender, DevExpress.XtraBars.Docking2010.BaseButtonEventArgs e)
{
if (_parter == null)
{
return;
}
this.HydroViewEvent?.Invoke(_parter);
}
}
}