首页 > 解决方案 > 在 DevExpress DateEditFor 控件上,如何仅通过单击日历来强制选择日期而不是手动输入

问题描述

在 MVC DevExpress DateEditFor 中,(由一个文本框和一个下拉弹出日历组成)有没有办法禁止用户直接在文本框中输入日期,从而强制选择只能通过单击日历?

@Html.DevExpress().DateEditFor(m => m.StartDateReserv, settings =>
{
    settings.Properties.CalendarProperties.FastNavProperties.Enabled = false;
    settings.Properties.AllowNull = true;
    settings.Properties.MinDate = DateTime.Today;
    settings.Properties.EditFormat = EditFormat.Date;
    settings.Properties.DisplayFormatString = "d";
    settings.Properties.ShowOutOfRangeWarning = false;
    settings.ShowModelErrors = false;

    settings.Properties.CalendarProperties.ShowClearButton = false;
    settings.Properties.CalendarProperties.ShowTodayButton = false;
    settings.Properties.CalendarProperties.ShowWeekNumbers = false;
    settings.Properties.CalendarProperties.EnableYearNavigation = false;
    settings.Properties.ClientSideEvents.GotFocus = "function(s, e) { s.ShowDropDown(); }";
 }).GetHtml()

标签: devexpressdevexpress-windows-uidevexpress-mvc

解决方案


您应该能够通过以下设置完成此操作:

 settings.Properties.AllowUserInput = false;

推荐阅读