Передача нулевого значения в элемент управления датой html5 в строке GridView - PullRequest
0 голосов
/ 03 июня 2019

Мне нужно иметь возможность изменять даты начала / окончания в строке asp GridView. У меня все работает, кроме возможности обновить пустую дату. У нас есть даты начала и окончания, при этом дата начала является обязательной, но дата окончания является необязательной, поэтому, когда они отображаются в строке GridView, дата окончания просто пуста, если ничего не было введено, но когда они обновляют строку, я хочу поле ввода даты окончания отображается как «дд / мм / гггг» (так же, как при вызове ввода даты без передачи значения), если дата окончания равна нулю. Кто-нибудь знает, возможно ли это сделать, и если нет, предложить способ обойти это? Я могу перехватить нулевое значение в FormatDate и превратить его в минимальную или максимальную дату, а затем преобразовать его обратно в нулевое, когда они обновляют строку, но это довольно грязно.

Я пытался передать пустую строку и нули, но оба вызывают сбой. (CalendarCombo - это просто оболочка для TextBox)

<EditItemTemplate>
    <cc1:CalendarCombo ID="EndDateUpdate" Nullable="True" 
        Value='<%# Eval("EndDate", "{0:yyyy-MM-dd}") %>' 
        runat="server" type="date" AutoPostBack="True"/>
</EditItemTemplate>

и

<EditItemTemplate>
    <cc1:CalendarCombo ID="EndDateUpdate" Nullable="True" 
        Value='<%# FormatDate(DataBinder.Eval(Container.DataItem, "EndDate"))%>' 
        runat="server" type="date" AutoPostBack="True"/>
</EditItemTemplate>

где FormatDate (извините за VB; его старый код)

    Public Function FormatDate(ByVal dateFromDb As Object) As String
        If dateFromDb.GetType() Is GetType(DBNull) Then
            Return Nothing
        End If

        Dim d As Date = CType(dateFromDb, Date)
        Return d.ToString("yyyy-MM-dd")
    End Function

Я бы хотел, чтобы поле даты ввода отображалось как "дд / мм / гггг", когда EndDate равен нулю / ничего.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...