示例#1
0
        private static string GetFormatValue(Helpers.ContractPropertyHelper propertyHelper)
        {
            propertyHelper.CheckArgument(nameof(propertyHelper));

            var result = string.Empty;

            if (propertyHelper.PropertyType.Equals(typeof(TimeSpan)))
            {
                result = "HH:mm";
            }
            else if (propertyHelper.PropertyType.Equals(typeof(TimeSpan?)))
            {
                result = "HH:mm";
            }
            else if (propertyHelper.PropertyType.Equals(typeof(DateTime)))
            {
                result = "dd.MM.yyyy";
                if (propertyHelper.ContentType == CommonBase.Attributes.ContentType.DateTime)
                {
                    result += " HH:mm:ss";
                }
            }
            else if (propertyHelper.PropertyType.Equals(typeof(DateTime?)))
            {
                result = "dd.MM.yyyy";
                if (propertyHelper.ContentType == CommonBase.Attributes.ContentType.DateTime)
                {
                    result += " HH:mm:ss";
                }
            }
            return(result);
        }
示例#2
0
        private static ReadonlyMode GetReadonlyMode(Helpers.ContractPropertyHelper propertyHelper)
        {
            propertyHelper.CheckArgument(nameof(propertyHelper));

            var result = ReadonlyMode.None;

            if (propertyHelper.Property.CanWrite == false)
            {
                result = ReadonlyMode.Readonly;
            }
            return(result);
        }
示例#3
0
        public static RazorBuilder CreateTextGridColumn(PropertyInfo propertyInfo)
        {
            var propertyHelper = new Helpers.ContractPropertyHelper(propertyInfo);

            return(CreateDefaultGridColumn(propertyInfo, rb =>
            {
                if (propertyInfo.CanWrite)
                {
                    rb.OpenTag("EditTemplate", "Context=\"item\"");
                    rb.AddTag("RadzenTextBox", $"@bind-Value=\"@item.{propertyInfo.Name}\" Name=\"@TranslateFor(nameof(TModel.{propertyInfo.Name}))\" Style=\"width: 100%; display: block\"");
                    if (propertyHelper.IsRequired)
                    {
                        rb.AddTag("RadzenRequiredValidator", $"Text=\"@TranslateFor(nameof(TModel.{propertyInfo.Name}) + \" is required\")\" Component=\"@TranslateFor(nameof(TModel.{propertyInfo.Name}))\" Popup=\"true\"");
                    }
                    rb.CloseTag();
                }
            }));
        }
示例#4
0
        public static RazorBuilder CreateTextEditField(PropertyInfo propertyInfo)
        {
            propertyInfo.CheckArgument(nameof(propertyInfo));

            var propertyHelper = new Helpers.ContractPropertyHelper(propertyInfo);

            return(CreateDefaultEditField(propertyInfo, rb =>
            {
                if (propertyHelper.MaxLength > 50)
                {
                    rb.AddTag("RadzenTextArea", $"@bind-Value=\"@EditModel.{propertyInfo.Name}\" MaxLength=\"{propertyHelper.MaxLength}\" Name=\"@TranslateFor(nameof(EditModel.{propertyInfo.Name}))\" Style=\"width: 100%;\"");
                }
                else
                {
                    rb.AddTag("RadzenTextBox", $"@bind-Value=\"@EditModel.{propertyInfo.Name}\" MaxLength=\"{propertyHelper.MaxLength}\" Name=\"@TranslateFor(nameof(EditModel.{propertyInfo.Name}))\" Style=\"width: 100%;\"");
                }
                if (propertyHelper.IsRequired)
                {
                    rb.AddTag("RadzenRequiredValidator", $"Text=\"@TranslateFor(nameof(EditModel.{propertyInfo.Name}) + \" is required\")\" Component=\"@TranslateFor(nameof(EditModel.{propertyInfo.Name}))\" Popup=\"false\"");
                }
            }));
        }
示例#5
0
        private static string GetListWitdh(Helpers.ContractPropertyHelper propertyHelper)
        {
            propertyHelper.CheckArgument(nameof(propertyHelper));

            var result = "100%";
            var type   = propertyHelper.PropertyType;

            if (type.IsGenericType)
            {
                type = type.GenericTypeArguments[0];
            }

            if (type.IsNumericType())
            {
                result = "100px";
            }
            else if (type == typeof(DateTime))
            {
                result = "160px";
            }
            return(result);
        }
示例#6
0
        private static VisibilityMode GetVisibilityMode(Helpers.ContractPropertyHelper propertyHelper)
        {
            propertyHelper.CheckArgument(nameof(propertyHelper));

            var result = VisibilityMode.Visible;
            var name   = propertyHelper.PropertyName;
            var type   = propertyHelper.PropertyType;

            if (name.Equals("Id"))
            {
                result = VisibilityMode.Hidden;
            }
            else if (name.Equals("RowVersion"))
            {
                result = VisibilityMode.Hidden;
            }
            else if (type == typeof(byte[]))
            {
                result = VisibilityMode.Hidden;
            }
            return(result);
        }