internal void SetMaskEdit(DevExpress.XtraEditors.Mask.MaskProperties pMaskEdit) { switch (this.DataType) { case BoDataType.dt_LONG_NUMBER: case BoDataType.dt_SHORT_NUMBER: pMaskEdit.EditMask = "f0"; pMaskEdit.MaskType = DevExpress.XtraEditors.Mask.MaskType.Numeric; pMaskEdit.UseMaskAsDisplayFormat = false; break; case BoDataType.dt_QUANTITY: pMaskEdit.EditMask = "n" + this.DecimalPlaces.ToString( ); pMaskEdit.MaskType = DevExpress.XtraEditors.Mask.MaskType.Numeric; break; case BoDataType.dt_PRICE: pMaskEdit.EditMask = "n" + this.DecimalPlaces.ToString( ); pMaskEdit.MaskType = DevExpress.XtraEditors.Mask.MaskType.Numeric; break; case BoDataType.dt_RATE: pMaskEdit.EditMask = "n" + this.DecimalPlaces.ToString( ); pMaskEdit.MaskType = DevExpress.XtraEditors.Mask.MaskType.Numeric; break; case BoDataType.dt_MEASURE: pMaskEdit.EditMask = "n" + this.DecimalPlaces.ToString( ); pMaskEdit.MaskType = DevExpress.XtraEditors.Mask.MaskType.Numeric; break; case BoDataType.dt_SUM: pMaskEdit.EditMask = "n" + this.DecimalPlaces.ToString( ); pMaskEdit.MaskType = DevExpress.XtraEditors.Mask.MaskType.Numeric; break; case BoDataType.dt_PERCENT: pMaskEdit.EditMask = "n" + this.DecimalPlaces.ToString( ); pMaskEdit.MaskType = DevExpress.XtraEditors.Mask.MaskType.Numeric; break; case BoDataType.dt_LONG_TEXT: case BoDataType.dt_SHORT_TEXT: pMaskEdit.EditMask = String.Empty; pMaskEdit.MaskType = DevExpress.XtraEditors.Mask.MaskType.None; break; case BoDataType.dt_DATE: pMaskEdit.EditMask = "([012]?[1-9]|[123]0|31)/(0?[1-9]|1[012])/([123][0-9])?[0-9][0-9]"; pMaskEdit.MaskType = DevExpress.XtraEditors.Mask.MaskType.RegEx; pMaskEdit.ShowPlaceHolders = false; pMaskEdit.UseMaskAsDisplayFormat = true; break; default: break; } }
/// <summary> /// set mask mode and mask. No placeholders. /// </summary> /// <param name="edit">mask</param> /// <param name="digitsBeforeDecimaPoint">number of digits before decima point</param> private static void SetUpMask(DevExpress.XtraEditors.Mask.MaskProperties mask, int digitsBeforeDecimaPoint, bool canBeNegative) { int setDigits = (digitsBeforeDecimaPoint > maxDigitsBeforeDecimalPoint) ? maxDigitsBeforeDecimalPoint : digitsBeforeDecimaPoint; mask.MaskType = DevExpress.XtraEditors.Mask.MaskType.RegEx; if (canBeNegative) { mask.EditMask = @"(-\d|\d){0," + setDigits.ToString() + @"}([\.\,]\d{0,2})?"; } else { mask.EditMask = @"\d{0," + setDigits.ToString() + @"}([\.\,]\d{0,2})?"; } mask.ShowPlaceHolders = false; }
protected override MaskManager CreateMaskManager(DevExpress.XtraEditors.Mask.MaskProperties mask) { fManager = (NumericMaskManager)base.CreateMaskManager(mask); return(fManager); }