using DevExpress.Utils;
|
using DevExpress.XtraEditors.Controls;
|
using HStation.Vmo;
|
|
namespace HStation.WinFrmUI.Assets
|
{
|
public partial class EditAssetsFlowmeterMainDlg : DevExpress.XtraEditors.XtraForm
|
{
|
public EditAssetsFlowmeterMainDlg()
|
{
|
InitializeComponent();
|
this.treeList1.InitialMultiColSettings();
|
this.IconOptions.Icon = Yw.WinFrmUI.GlobalParas.AppIcon;
|
}
|
|
private Vmo.AssetsFlowmeterMainVmo _FlowmeterVmo = null;
|
|
private List<Vmo.AssetsFlowmeterCoefficientVmo> _AssetsFlowmeterCoefficient;
|
|
public async void SetBindingData(Vmo.AssetsFlowmeterMainVmo FlowmeterVmo)
|
{
|
var bll = new BLL.AssetsFlowmeterCoefficient();
|
_AssetsFlowmeterCoefficient = await bll.GetAll();
|
this.FlowmeterCoefficientViewModelBindingSource.DataSource = _AssetsFlowmeterCoefficient;
|
_FlowmeterVmo = FlowmeterVmo;
|
this.TextEditName.Text = _FlowmeterVmo.Name;
|
this.TextEditMinorLoss.Text = _FlowmeterVmo.MinorLoss.ToString();
|
this.DescriptionTextEdit.Text = _FlowmeterVmo.Description;
|
this.TextEditKeyWord.Text = string.Join(",", _FlowmeterVmo.KeyWord);
|
this.selectFlagsPopupCtrl1.SetBindingData<AssetsFlags>(_FlowmeterVmo.Flags);
|
}
|
|
public event Func<Vmo.AssetsFlowmeterMainVmo, Task<bool>> ReloadDataEvent = null;
|
|
//数据验证
|
private bool Valid()
|
{
|
this.dxErrorProvider1.ClearErrors();
|
if (string.IsNullOrEmpty(TextEditName.Text.Trim()))
|
{
|
this.dxErrorProvider1.SetError(this.TextEditName, "必填项");
|
return false;
|
}
|
return true;
|
}
|
|
//完成
|
private async void BtnOk_ClickAsync(object sender, EventArgs e)
|
{
|
if (!(Valid()))
|
return;
|
_FlowmeterVmo.Description = DescriptionTextEdit.Text.Trim();
|
_FlowmeterVmo.Name = TextEditName.Text.Trim();
|
_FlowmeterVmo.KeyWord = TextEditKeyWord.Text.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries).ToList();
|
if (double.TryParse(TextEditMinorLoss.Text, out double MinorLoss))
|
{
|
_FlowmeterVmo.MinorLoss = MinorLoss;
|
}
|
_FlowmeterVmo.Flags = this.selectFlagsPopupCtrl1.SelectedFlags;
|
if (await this.ReloadDataEvent.Invoke(_FlowmeterVmo))
|
{
|
TipFormHelper.ShowSucceed("修改成功!");
|
}
|
else
|
{
|
TipFormHelper.ShowSucceed("修改失败!");
|
}
|
this.DialogResult = DialogResult.OK;
|
this.Close();
|
}
|
|
private void treeList1_FocusedNodeChanged(object sender, DevExpress.XtraTreeList.FocusedNodeChangedEventArgs e)
|
{
|
var vm = this.treeList1.GetCurrentViewModel(_AssetsFlowmeterCoefficient);
|
if (vm == null)
|
return;
|
this.TextEditMinorLoss.Text = vm.MinorLoss.ToString();
|
}
|
}
|
}
|