namespace Yw.WinFrmUI
{
///
/// 水力可见组件
///
public class HydroVisualViewModel : HydroParterViewModel
{
///
///
///
public HydroVisualViewModel() { }
///
///
///
public HydroVisualViewModel(Yw.Model.HydroVisualInfo rhs, Yw.Model.HydroModelInfo hydroInfo) : base(rhs, hydroInfo)
{
this.FlowDirection = rhs.FlowDirection;
this.UpdatePropStatus(nameof(this.FlowDirection), rhs, nameof(rhs.FlowDirection));
this.FlowDirectionX = rhs.FlowDirectionX;
this.UpdatePropStatus(nameof(this.FlowDirectionX), rhs, nameof(rhs.FlowDirectionX));
this.FlowDirectionY = rhs.FlowDirectionY;
this.UpdatePropStatus(nameof(this.FlowDirectionY), rhs, nameof(rhs.FlowDirectionY));
this.Vmo = rhs;
}
///
/// 流向
///
[Category("拓扑结构")]
[DisplayName("流向")]
[PropertyOrder(101)]
[Browsable(true)]
public virtual int FlowDirection { get; set; }
///
/// X流向
///
[Category("拓扑结构")]
[DisplayName("X流向")]
[PropertyOrder(102)]
[Browsable(true)]
public virtual int FlowDirectionX { get; set; }
///
/// Y流向
///
[Category("拓扑结构")]
[DisplayName("Y流向")]
[PropertyOrder(103)]
[Browsable(true)]
public virtual int FlowDirectionY { get; set; }
///
/// vmo
///
[Browsable(false)]
public new Yw.Model.HydroVisualInfo Vmo { get; set; }
///
/// 更新属性
///
public override void UpdateProperty()
{
base.UpdateProperty();
this.FlowDirection = this.Vmo.FlowDirection;
this.UpdatePropStatus(nameof(this.FlowDirection), this.Vmo, nameof(this.Vmo.FlowDirection));
this.FlowDirectionX = this.Vmo.FlowDirectionX;
this.UpdatePropStatus(nameof(this.FlowDirectionX), this.Vmo, nameof(this.Vmo.FlowDirectionX));
this.FlowDirectionY = this.Vmo.FlowDirectionY;
this.UpdatePropStatus(nameof(this.FlowDirectionY), this.Vmo, nameof(this.Vmo.FlowDirectionY));
}
///
/// 更新 Vmo 属性
///
public override void UpdateVmoProperty()
{
base.UpdateVmoProperty();
this.Vmo.FlowDirection = this.FlowDirection;
this.Vmo.UpdatePropStatus(nameof(this.Vmo.FlowDirection), this, nameof(this.FlowDirection));
this.Vmo.FlowDirectionX = this.FlowDirectionX;
this.Vmo.UpdatePropStatus(nameof(this.Vmo.FlowDirectionX), this, nameof(this.FlowDirectionX));
this.Vmo.FlowDirectionY = this.FlowDirectionY;
this.Vmo.UpdatePropStatus(nameof(this.Vmo.FlowDirectionY), this, nameof(this.FlowDirectionY));
}
}
}