示例#1
0
        protected void OnClickIconHandler()
        {
            this.InvokeStateHasChanged();

            if (!DisableCalendar && !Disabled && !ReadOnly)
            {
                CallAfterRender(async() =>
                {
                    dotNetObjectRef ??= CreateDotNetObjectRef(dotNetObject);

                    await JsInvokeAsync <object>("matBlazor.matDatePicker.open", Ref, flatpickrInputRef, dotNetObjectRef,
                                                 new FlatpickrOptions
                    {
                        EnableTime        = this.EnableTime,
                        Enable24hours     = this.Enable24hours,
                        EnableSeconds     = this.EnableSeconds,
                        EnableWeekNumbers = this.EnableWeekNumbers,
                        DisableMobile     = this.DisableMobile,
                        Mode        = this.Mode,
                        Position    = Position.ToString().ToLower(),
                        DefaultDate = SwitchT.ToDateTimeNull(Value),
                        Minimum     = this.EnableTime ? Minimum : Minimum?.Date,
                        Maximum     = this.EnableTime ? Maximum : Maximum?.Date,
                        Value       = SwitchT.ToDateTimeNull(CurrentValue),
                    });
                });
            }
        }
示例#2
0
        protected override bool ValidateCurrentValue(TValue value)
        {
            if (!base.ValidateCurrentValue(value))
            {
                return(false);
            }


            var dateValue = SwitchT.ToDateTimeNull(value);

            if (dateValue.HasValue)
            {
                if (Minimum.HasValue && (EnableTime == true ? (Minimum.Value > dateValue.Value) : (Minimum.Value.Date > dateValue.Value.Date)))
                {
                    return(false);
                }

                if (Maximum.HasValue && (EnableTime == true ? (Maximum.Value < dateValue.Value) : (Maximum.Value.Date < dateValue.Value.Date)))
                {
                    return(false);
                }
            }

            return(true);
        }