コード例 #1
0
        private async void Student_PropertyChanged(object sender, PropertyChangedEventArgs e)
        {
            if (e.PropertyName == "Validations")
            {
                return;
            }
            var result = await Validator.ValidateAllAsync();

            if (result != null && result.IsValid)
            {
                Validations = new ObservableCollection <AutoGenerateForm.Uwp.Models.ValidationModel>();
                return;
            }
            var errors = new List <AutoGenerateForm.Uwp.Models.ValidationModel>();

            if (result != null && result.ErrorList != null && !result.IsValid)
            {
                foreach (var item in result.ErrorList)
                {
                    var error    = new AutoGenerateForm.Uwp.Models.ValidationModel();
                    var property = this.GetType().GetProperty(item.Target.ToString());

                    if (property != null)
                    {
                        var displayAttribute = AttributeHelper <DisplayAttribute> .GetAttributeValue(property);

                        error.Label = displayAttribute?.Label;
                    }
                    error.ErrorMessage       = item.ErrorText;
                    error.ParentPropertyName = "";
                    error.PropertyName       = item.Target.ToString();
                    if (item.Target.Equals("SelectedCourse"))
                    {
                        error.PropertyName       = "Courses";
                        error.ParentPropertyName = "";
                    }

                    errors.Add(error);
                }
            }
            this.Validations = new ObservableCollection <AutoGenerateForm.Uwp.Models.ValidationModel>(errors);
        }
コード例 #2
0
 public static string ResourceKey(this Enum enumValue)
 {
     return(AttributeHelper.GetAttributeValue <ResourceKeyAttribute, string>(enumValue));
 }
コード例 #3
0
        public static ProductFieldStatus Status(this ProductFields enumValue)
        {
            var attrValue = AttributeHelper.GetAttributeValue <ProductFieldsStatusAttribute, ProductFieldStatus>(enumValue);

            return(attrValue);
        }
コード例 #4
0
        public static string StrName(this Enum enumValue)
        {
            var attrValue = AttributeHelper.GetAttributeValue <StringNameAttribute, string>(enumValue);

            return(string.IsNullOrEmpty(attrValue) ? enumValue.ToString().ToLower() : attrValue);
        }