or
@(Html.Kendo().Scheduler<SchedulerViewModel>() .Name("scheduler") .Date(new DateTime(2015, 2, 1)) .StartTime(new DateTime(2015, 2, 1, 7, 00, 00)) .Height(600) .Timezone("Etc/UTC") .Views(views => { views.DayView(); views.WeekView(); views.MonthView(monthView => monthView.Selected(true)); }) .DataSource(d => d.Model(m => { m.Id(f => f.EventId); m.Field(f => f.Title).DefaultValue("No title"); m.RecurrenceId(f => f.RecurrenceID); m.Field(f => f.IsAllDay).DefaultValue(false); }) .Read("Read", "Scheduler") .Create("Create", "Scheduler") .Destroy("Destroy", "Scheduler") .Update("Update", "Scheduler") ) .Editable(editable => { editable.TemplateName("CustomEditorTemplate"); }) )@model PokerLeagueMVCv2.Models.SchedulerViewModel @{ //required in order to render validation attributes ViewContext.FormContext = new FormContext();}@functions{ public Dictionary<string, object> generateDatePickerAttributes( string elementId, string fieldName, string dataBindAttribute, Dictionary<string, object> additionalAttributes = null) { Dictionary<string, object> datePickerAttributes = additionalAttributes != null ? new Dictionary<string, object>(additionalAttributes) : new Dictionary<string, object>(); datePickerAttributes["id"] = elementId; datePickerAttributes["name"] = fieldName; datePickerAttributes["data-bind"] = dataBindAttribute; datePickerAttributes["required"] = "required"; datePickerAttributes["style"] = "z-index: inherit;"; return datePickerAttributes; }}<div class="k-edit-label"> @(Html.LabelFor(model => model.Title))</div><div data-container-for="VenueId" class="k-edit-field"> @(Html.Kendo().DropDownListFor(model => model.VenueId) .Name("Venue") .HtmlAttributes(new { data_bind = "value:VenueId", style = "width: 300px" }) .DataTextField("VenueName") .DataValueField("VenueId") .DataSource(source => { source.Read(read => { read.Action("VenueDropDownList", "DropDownList"); }); }) ) </div><div class="k-edit-label"> @(Html.LabelFor(model => model.RegionIds))</div><div data-container-for="RegionIds" class="k-edit-field"> @(Html.Kendo().MultiSelectFor(model => model.RegionIds) .Name("AssignRegions") .HtmlAttributes(new { data_bind = "value:RegionIds", style = "width: 200px" }) .DataTextField("RegionName") .DataValueField("RegionId") .DataSource(source => { source.Read(read => { read.Action("RegionDropDownList", "DropDownList"); }); }) )</div> <div class="k-edit-label"> @(Html.LabelFor(model => model.Start)) </div> <div data-container-for="start" class="k-edit-field"> @(Html.Kendo().DateTimePickerFor(model => model.Start) .HtmlAttributes(generateDatePickerAttributes("startDateTime", "start", "value:start,invisible:isAllDay"))) @(Html.Kendo().DatePickerFor(model => model.Start) .HtmlAttributes(generateDatePickerAttributes("startDate", "start", "value:start,visible:isAllDay"))) <span data-bind="text: startTimezone"></span> <span data-for="start" class="k-invalid-msg"></span> </div> <div class="k-edit-label"> @(Html.LabelFor(model => model.End)) </div> <div data-container-for="end" class="k-edit-field"> @(Html.Kendo().DateTimePickerFor(model => model.End) .HtmlAttributes(generateDatePickerAttributes( "endDateTime", "end", "value:end,invisible:isAllDay", new Dictionary<string, object>() { { "data-dateCompare-msg", "End date should be greater than or equal to the start date" } }))) @(Html.Kendo().DatePickerFor(model => model.End) .HtmlAttributes(generateDatePickerAttributes( "endDate", "end", "value:end,visible:isAllDay", new Dictionary<string, object>() { { "data-dateCompare-msg", "End date should be greater than or equal to the start date" } }))) <span data-bind="text: endTimezone"></span> <span data-for="end" class="k-invalid-msg"></span> </div> <div class="k-edit-label"> @(Html.LabelFor(model => model.IsAllDay)) </div> <div data-container-for="isAllDay" class="k-edit-field"> <input id="IsAllDay" data-bind="checked: isAllDay" data-val="false" name="IsAllDay" type="checkbox" /> </div> <div class="endTimezoneRow"> <div class="k-edit-label"></div> <div class="k-edit-field"> <label class="k-check"> <input checked="checked" class="k-timezone-toggle" type="checkbox" value="true" /> Use separate start and end time zones </label> </div> </div> <script> $(".k-timezone-toggle").on("click", function () { var isVisible = $(this).is(":checked"); var container = $(this).closest(".k-popup-edit-form"); var endTimezoneRow = container.find("label[for='EndTimezone']").parent().add(container.find("div[data-container-for='endTimezone']")); endTimezoneRow.toggle(isVisible); if (!isVisible) { var uid = container.attr("data-uid"); var scheduler = $("\#scheduler").data("kendoScheduler"); var model = scheduler.dataSource.getByUid(uid); model.set("endTimezone", null); } }); var endTimezone = '${data.endTimezone}'; if (!endTimezone || endTimezone == "null") { $(".k-timezone-toggle").trigger('click'); } </script> <div class="k-edit-label"> @(Html.LabelFor(model => model.StartTimezone)) </div> <div data-container-for="startTimezone" class="k-edit-field"> @(Html.Kendo().TimezoneEditorFor(model => model.StartTimezone) .HtmlAttributes(new { data_bind = "value:startTimezone" })) </div> <div class="k-edit-label"> @(Html.LabelFor(model => model.EndTimezone)) </div> <div data-container-for="endTimezone" class="k-edit-field"> @(Html.Kendo().TimezoneEditorFor(model => model.EndTimezone) .HtmlAttributes(new { data_bind = "value:endTimezone" })) </div> <div class="k-edit-label"> @(Html.LabelFor(model => model.RecurrenceRule)) </div> <div data-container-for="recurrenceRule" class="k-edit-field"> @(Html.Kendo().RecurrenceEditorFor(model => model.RecurrenceRule) .HtmlAttributes(new { data_bind = "value:recurrenceRule" })) </div> <div class="k-edit-label"> @(Html.LabelFor(model => model.Description)) </div> <div data-container-for="description" class="k-edit-field"> @(Html.TextAreaFor(model => model.Description, new { @class = "k-textbox", data_bind = "value:description" })) </div> <div class="k-edit-label"> @(Html.LabelFor(model => model.Registration)) </div> <div data-container-for="Registration" class="k-edit-field"> <input data-bind="checked: Registration" data-val="false" id="Registration" name="Registration" type="checkbox" class="k-registration-toggle" /> </div> <div class="k-edit-label"> @(Html.LabelFor(model => model.MaxRegistrations)) </div> <div data-container-for="MaxRegistrations" class="k-edit-field"> @(Html.TextBoxFor(model => model.MaxRegistrations, new { @class = "k-textbox", data_bind = "value:MaxRegistrations" })) </div> <div class="k-edit-label"> @(Html.LabelFor(model => model.MaxWaitList)) </div> <div data-container-for="MaxWaitList" class="k-edit-field"> @(Html.TextBoxFor(model => model.MaxWaitList, new { @class = "k-textbox", data_bind = "value:MaxWaitList" })) </div> <div class="k-edit-label"> @(Html.LabelFor(model => model.MaxWinsAllowed)) </div> <div data-container-for="MaxWinsAllowed" class="k-edit-field"> @(Html.TextBoxFor(model => model.MaxWinsAllowed, new { @class = "k-textbox", data_bind = "value:MaxWinsAllowed" })) </div> @{ ViewContext.FormContext = null; }public class SchedulerViewModel: ISchedulerEvent { public string Title { get; set; } private DateTime start; public DateTime Start { get { return start; } set { start = value.ToUniversalTime(); } } private DateTime end; public DateTime End { get { return end; } set { end = value.ToUniversalTime(); } } [DisplayName("Start Timezone")] public string StartTimezone { get; set; } [DisplayName("End Timezone")] public string EndTimezone { get; set; } public string Description { get; set; } public bool IsAllDay { get; set; } public string Recurrence { get; set; } public int? RecurrenceID { get; set; } [DisplayName("Recurrence")] public string RecurrenceRule { get; set; } public string RecurrenceException { get; set; } //this is for charity events or session main events public bool Registration { get; set; } [DisplayName("Max Reg")] public int MaxRegistrations { get; set; } [DisplayName("Max Wins")] public int MaxWinsAllowed { get; set; } [DisplayName("Max Wait")] public int MaxWaitList { get; set; } //IDs public int VenueId { get; set; } public int EventId { get; set; } [DisplayName("Regions")] public ICollection<Region> RegionIds { get; set; } public LeagueEvent ToEntity() { return new LeagueEvent { EventId = EventId, VenueId =VenueId, Start = Start, End = End, StartTimezone = StartTimezone, EndTimezone = EndTimezone, Description = Description, IsAllDay = IsAllDay, Recurrence = Recurrence, RecurrenceID = RecurrenceID, RecurrenceRule = RecurrenceRule, RecurrenceException = RecurrenceException, Registration = Registration, MaxRegistrations = MaxRegistrations, MaxWinsAllowed = MaxWinsAllowed, MaxWaitList = MaxWaitList, RegionIds = RegionIds }; } }@(Html.Kendo().Grid<CompanyDomainView>() .Name("customer-grid") .ClientDetailTemplateId("customerTemplate") ........<script id="customerTemplate" class="gridtemplates" type="text/x-kendo-tmpl"> <section> <div class="k-widget inline-grid-box">.....
<div class="form-group"> @Html.LabelFor(model => model.from_date, htmlAttributes: new { @class = "control-label col-md-2" }) <div class="col-md-10"> @Html.EditorFor(model => model.from_date, new { htmlAttributes = new { @class = "form-control" } }) @Html.ValidationMessageFor(model => model.from_date, "", new { @class = "text-danger" }) </div></div>
@(Html.Kendo() .Grid<WellsRxWeb.Models.UserNotesModel>() .Name("gridUserNotes") .Columns(columns => { columns.Bound(p => p.NotesId).Title("Id").Visible(false); columns.Bound(p => p.UserName).Title("UserName").Visible(false); columns.Bound(p => p.UserNoteText).Title("Notes").EditorTemplateName("TextEditor"); columns.Bound(p => p.ModifiedBy).Title("Saved By"); columns.Bound(p => p.Modified).Title("Saved").Format("{0:MM/dd/yyyy}"); columns.Command(command => { command.Edit(); command.Destroy(); }).Width(172); }) .ToolBar(toolbar => { toolbar.Create(); }) .Editable(editable => editable.Mode(GridEditMode.InLine)) .Pageable() .Sortable() .Filterable() .Pageable(pageable => pageable .Refresh(true) .PageSizes(true) .ButtonCount(5)) .Filterable() .Reorderable(r => r.Columns(true)) .Resizable(r => r.Columns(true)) .ColumnMenu() .DataSource(dataSource => dataSource .Ajax() .Model(model => { model.Id(o => o.NotesId); model.Field(p => p.UserName).Editable(false); model.Field(p => p.ModifiedBy).Editable(false); model.Field(p => p.Modified).Editable(false); }) .Read(read => read.Action("UserNotes_Read", "User").Type(HttpVerbs.Get).Data("additionalData")) .Create(create => create.Action("UserNotes_Create", "User").Data("additionalData")) .Update(update => update.Action("UserNotes_Update", "User").Data("additionalData")) .Destroy(destroy => destroy.Action("UserNotes_Destroy", "User").Data("additionalData").Type(HttpVerbs.Post)) .Events(events => { events.RequestEnd("gridRequestEnd"); })))@model WellsRxWeb.Models.UserNotesModel@(Html.Kendo().EditorFor(model => model.UserNoteText) .Name("TextEditor") .HtmlAttributes(new { style = "width: 740px;height:440px" }))