Использование CalendarExtender с MaskedEditExtender

Я пытаюсь использовать функцию текстового поля точно так же, как третье текстовое поле на этой странице: http://www.asp.net/AJAX/AjaxControlToolkit/Samples/MaskedEdit/MaskedEdit.aspx. Я пытаюсь использовать элемент управления CalendarExtender с MaskedEditExtender, потому что я не хочу, чтобы пользователь мог вводить в поле что-либо, кроме действительной даты. На моем maskededitextender у меня есть маска «99/99/9999», но, похоже, она работает только тогда, когда дата на самом деле состоит из 8 цифр (например, 12/12/2000), а не когда дата составляет 7 или 6 цифр (например, 1 / 1/2000 или 14.01.2000). Маска завинчивается, когда в дате меньше 8 цифр. Вот мой код:

<asp:TextBox runat="server" ID="txtDateAvailable" Width="150px" maxlength="50"></asp:TextBox>
<asp:CalendarExtender ID="calDateAvailable" runat="server" TargetControlID="txtDateAvailable" format="d" PopupPosition="Right"></asp:CalendarExtender>
<asp:MaskedEditExtender ID="mskDateAvailable" runat="server" targetcontrolid="txtDateAvailable" Mask="99/99/9999" clearmaskonlostfocus="false" MaskType="None"></asp:MaskedEditExtender>

Если бы я мог понять, как получить формат даты CalendarExtender в MM / DD / YYYY вместо M / D / YYYY, это исправило бы.


person Industrial Themes    schedule 28.03.2011    source источник


Ответы (2)



Синтаксис для него следующий: Format="MM/dd/yyyy" и измените его по своему усмотрению, но вы должны убедиться, что месяц указан в верхнем регистре, иначе он вернет нули, которые я использовал -

<asp:CalendarExtender ID="CalendarExtender1" runat="server" TargetControlID="TextBox1" 
    PopupButtonID="ImageButton1" Format="dd/MM/yy">
person Floyd    schedule 07.03.2013