2013-01-16 4 views
2

asp.net mvc 구문이있는 검도 UI 그리드가 있습니다. 편집을위한 편집기 템플리트와 함께 datetime 열이 있습니다. 편집을 클릭하면 datetimepicker가 표시되지만 이미 존재하는 경우 현재 값 (InvoicedDate)을 유지하는 방법을 알 수 없습니다. 어떤 아이디어?검도 UI 그리드 DateTimePicker 편집기 템플릿 - 유지 값

편집 : 날짜를 선택할 때 해당 값을 업데이트 작업으로 끌어 오지 않습니다. 문제가 관련 있다고 가정합니다.

송장 그리드 :

@(Html.Kendo().Grid<TMS.MVC.TIMS.Models.Invoice.InvoiceGridModel>() 
<snip> 
columns.Bound(o => o.InvoicedDate).Width(100).Title("Invoice Date").Format("{0:M/d/yyyy}").EditorTemplateName("Invoice_InvoiceDate"); 
<snip> 

편집기 템플릿 (Invoice_InvoiceDate.cshtml) :

@model TMS.MVC.TIMS.Models.Invoice.InvoiceGridModel 

    @(Html.Kendo().DateTimePicker() 
        .Name("InvoiceDate") 
        .Value(Model == null ? DateTime.Now : Model.InvoicedDate) 
        .Format("M/d/yyyy h:mm tt") 
    ) 
+0

https://kendoeditortemplate.codeplex.com/ –

답변

4

나는 문제가 editorTemplate이

@model TMS.MVC.TIMS.Models.Invoice.InvoiceGridModel 
에 걸릴을 시도하고 있다고 믿는다

editorTemplate을 호출하는 표의 열이 Type DateTime 일 가능성이 높기 때문에이 방법이 작동하지 않습니다. 형식이 일치하지 않으므로 항상 편집기 템플릿에서 모델의 값으로 null을 표시하게됩니다. 대신이 방법을 사용해보십시오.

@model DateTime? 
@(Html.Kendo().DateTimePicker() 
       .Name("InvoiceDate") 
       .Value(Model == null ? DateTime.Now : @Model) 
       .Format("M/d/yyyy h:mm tt") 
)