簡體   English   中英

如何在DevExpress中為屬性定義自定義驗證?

[英]How to define a custom Validation for a property in DevExpress?

請考慮我在一個實體中擁有財產

        public double RealVolume
        {
            get
            {
                return _RealVolume;
            }
            set
            {
                SetPropertyValue("RealVolume", ref _RealVolume, value);
            }
        }   

那我也有

        [Browsable(false)]
        public VolumeType VolumeOrVolumePoints
        {
            get
            {
                return WMSSystemSetting.Get_VolumeOrVolumePoints(Session);
            }
        }

我希望在VolumeOrVolumePoints == VolumeType.VolumeRealVolume驗證為整數,否則將驗證為雙數。

我怎樣才能做到這一點? 謝謝!

有關如何使用XPO驗證對象的信息,請參見此處 如果您碰巧正在使用DevExpress XAF,請改用ValidationRule中的ValidationRule

因此,您需要類似:

protected override void OnSaving() 
{
    if (VolumeOrVolumePoints == VolumeType.Volume)
    {
        if (RealVolume % 1 != 0) // see http://stackoverflow.com/a/2751597/1077279
             throw new Exception("The RealVolume value must be an integer when using Volume units.");
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM