Telerik.Web.Mvc.UI.DatePickerHtmlBuilder.InputTag C# (CSharp) Method

InputTag() public method

public InputTag ( ) : IHtmlNode
return IHtmlNode
        public IHtmlNode InputTag()
        {
            ModelState state;
            DateTime? date = null;
            ViewDataDictionary viewData = DatePicker.ViewContext.ViewData;

            if (DatePicker.Value != DateTime.MinValue)
            {
                date = DatePicker.Value;
            }
            else if (viewData.ModelState.TryGetValue(DatePicker.Id, out state))
            {
                if (state.Errors.Count == 0)
                {
                    date = state.Value.ConvertTo(typeof(DateTime), Culture.Current) as DateTime?;
                }
            }

            object valueFromViewData = viewData.Eval(DatePicker.Name);

            if (valueFromViewData != null)
            {
                date = Convert.ToDateTime(valueFromViewData);
            }

            string value = string.Empty;

            if (date != null)
            {
                if (string.IsNullOrEmpty(DatePicker.Format))
                {
                    value = date.Value.ToShortDateString();
                }
                else
                {
                    value = date.Value.ToString(DatePicker.Format);
                }
            }

            return new HtmlTag("input", TagRenderMode.SelfClosing)
                .Attributes(new { name = DatePicker.Name, id = DatePicker.Id + "-input", value = value, title = DatePicker.Name })
                .Attributes(DatePicker.InputHtmlAttributes)
                .PrependClass(UIPrimitives.Input);
        }