Hi
When I'm trying to send the model with information in it to the edit view, I get a System.OverflowException : Value was either too large or too small for an Int32
in the StackTrace I get:
en System.Convert.ToInt32(Double value)
en System.Double.System.IConvertible.ToInt32(IFormatProvider provider)
en System.Convert.ChangeType(Object value, Type conversionType, IFormatProvider provider)
en System.Convert.ChangeType(Object value, Type conversionType)
en Kendo.Mvc.UI.Fluent.WidgetFactory`1.GetRangeValidationParameter[TValue](IEnumerable`1 validators, String parameter)
en Kendo.Mvc.UI.Fluent.WidgetFactory`1.NumericTextBoxFor[TValue](Expression`1 expression)
en ASP._Page_Views_Grupo_Edit_cshtml.Execute() en C:\Users\Pablo.Contreras\Documents\Visual Studio 2015\Projects\Administrativo\Grupos\NaveganteGruposBackEnd\NaveganteGruposBackEnd\Views\Grupo\Edit.cshtml:lĂnea 232
en System.Web.WebPages.WebPageBase.ExecutePageHierarchy()
en System.Web.Mvc.WebViewPage.ExecutePageHierarchy()
en System.Web.WebPages.StartPage.RunPage()
en System.Web.WebPages.StartPage.ExecutePageHierarchy()
en System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage)
en System.Web.Mvc.RazorView.RenderView(ViewContext viewContext, TextWriter writer, Object instance)
en System.Web.Mvc.BuildManagerCompiledView.Render(ViewContext viewContext, TextWriter writer)
en System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context)
en System.Web.Mvc.ControllerActionInvoker.InvokeActionResult(ControllerContext controllerContext, ActionResult actionResult)
en System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult)
en System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult)
In my model the field is int, and I allready try change it to INT32 with no results.
Hi, I'm trying to UPDATE and DELETE some rows from the spreadheet control, with datasource binding.
I've a custom defined button with save function:
$("#savebuttons").on('click', '#Save', function () {
if (!$(this).hasClass("k-state-disabled")) {
getDataSource().sync();
}
});
The datasource looks like this:
.DataSource<Siergy.BackOffice.Models.Management.ProjectElementViewModel>
(ds => ds
.Ajax()
.Batch(true)
.Read(read => read.Action("ProjectElementsSpreadsheet_Read", "ProjectsManagement"))
.Update(update => update.Action("ProjectElementsSpreadsheet_Update", "ProjectsManagement"))
.Create(create => create.Action("ProjectElementsSpreadsheet_Create", "ProjectsManagement"))
.Destroy(destroy => destroy.Action("ProjectElementsSpreadsheet_Destroy", "ProjectsManagement"))
.Events(e => e.Change("onChange"))
.Model(m =>
{
m.Id(p => p.IdElement);
})
);
All is working well to update rows, but destroy action never fires in the server, how can I get this working?
From DataSource documentation:
sync
Saves any data item changes.
The sync method will request the remote service if:
the transport.create option is set and the data source contains new data items
the transport.destroy option is set and data items have been removed from the data source
the transport.update option is set and the data source contains updated data items
Is it valid for spreadsheet datasources too?
Best Regards
I don't know if it is only possible through async method.
I am not using any form.
Right now I am passing other data
var data = {
Action: $("#Action").val(),
Follow: $("#Follow").val(),
EmailAddress: $.trim($("#emailaddress").val()),
...
};
$.ajax({
url: webManager.resolveUrl("~/maint/Submit"),
type: "POST",
data: data
success: function (response) {

Hi,
we're evaluating the Spreadsheet component for our solution and while we love most of it, we are having a blocking issue in the hide/unhide feature
In our case, we have a kind of "control panel with button" around the spreadsheet, which allows the user to hide/unhide some blocks of (potentially non contiguous rows or columns in one click). E.g. let's say you click a button and you hide rows 1, 7, 15, and 50 and columns E, F and Z.
The Spreadsheet client side API exposes single col/row hide methods and the overall time is very high
(e.g. 3 seconds to hide like some 40-60 rows)
Do you think there is or will be a workaround/fix on this?
thanks in advance
Sebastian

Currently we have complicated model which has objects.
Model:
class Person {
string name{get; set;}
ContactInfo contactInfo{get; set;}
}
class ContactInfo {
string phoneNumber {get; set;}
string address{get; set;}
}
View:
@(Html.Kendo().Grid(Model.Person).Name("testGrid")
.Columns(columns =>
{
columns.Bound(x => x.name);
columns.Bound(x => x.ContactInfo.phoneNumber);
....
in JS Console, with "$("#testGrid").data("kendoGrid").dataSource.data()" I see everything is good at the first load.
However, when I edit "phonenumber", the datasource looks like this:
o
-> Person
->Name:"xxx"
->ContactInfo
->phoneNumber :"xxxx"
->address : "xxxxxx"
->ContactInfo.phoneNumber: ""
we used Jquery.ajax to send the data in js so it has duplicated "ContactInfo.phoneNumber" after stringify, then it never reaches the MVC controller.
Questions:
1. How to solve this issue?
2. How to avoid this additional "ContactInfo.phoneNumber" been created?
Thanks!
How do I filter when I have the option for multiple selections using the Separator property
I have a Read action set up which passes the search data through to my controller and I have a client side script set up for the additional data
When a user has selected one user and then starts typing for the second user this pass "Name One; Nam" to the controller.
$("#distributionList").val() is passing the whole string and not the new search for the second name. How can I pass just the text that is being typed in and not the previously selected users.
1.function onDistributionListAdditionalData(obj) {2. return {3. text: $("#distributionList").val()4. };5. }
So I have a large list of Id's that I want to create a filter for and return. I was just adding a FilterDescriptor for each one but I found that once it got over a certain amount I get a stack overflow error. So I am trying to use the IsContainedIn operator.
private static void AddSiteIdFilterToRequest(DataSourceRequest request, IList<Guid> siteGuidList, string columnName)
{
if (siteGuidList == null || !siteGuidList.Any()) return;
var filterCollection = new CompositeFilterDescriptor { LogicalOperator = FilterCompositionLogicalOperator.Or };
filterCollection.FilterDescriptors.Add(new FilterDescriptor { Member = columnName, MemberType = typeof(Guid), Operator = FilterOperator.IsContainedIn, Value = siteGuidList });
request.Filters.Add(filterCollection);
}
I have implemented a custom tooltip for the scheduler. works great.
BUT - on mouse over the "title" popup is appearing along with the tooltip.
Question - How do I disable the "title" popup.
I tried using
$("#scheduler").kendoCalendar({
//....
navigate: function (e) {
this.element.find("tbody").find("a").removeAttr("title");
}
});
and it messed up the whole formatting of the calendar

We are getting a script error in kendo.all.js file when tried to load the below text in Kendo Editor control, this causes the remaining kendo controls to stop rendering properly.
The text has been copied from ms word and pasted to Editor control. The text is like the following, actually only the text is the only item that we copy from MS word but we are getting other formatting when we paste it to kendo editor.
Also attaching a screenshot of the error we are getting.
<span data-sheets-userformat="{"2":19005,"3":{"1":0},"5":{"1":[{"1":2,"2":0,"5":{"1":2,"2":0}},{"1":0,"2":0,"3":3},{"1":1,"2":0,"4":1}]},"6":{"1":[{"1":2,"2":0,"5":{"1":2,"2":0}},{"1":0,"2":0,"3":3},{"1":1,"2":0,"4":1}]},"7":{"1":[{"1":2,"2":0,"5":{"1":2,"2":0}},{"1":0,"2":0,"3":3},{"1":1,"2":0,"4":1}]},"8":{"1":[{"1":2,"2":0,"5":{"1":2,"2":0}},{"1":0,"2":0,"3":3},{"1":1,"2":0,"4":1}]},"12":0,"14":{"1":2,"2":0},"17":1}" data-sheets-value="{"1":2,"2":"REAL-TIME BUSINESS INTELLIGENCE ON THE 'PRODUCT MANAGEMENT' FUNCTION, DRIVEN BY ONGOING 360-DEGREE ENTERPRISE & STAKEHOLDER COLLABORATION:\n \u2022 ENGAGE internal employees and other key stakeholders in an ongoing 360-degree real-time feedback process that focuses onCritical Success Factors (CSFs)for the Product Management function.\n \u2022 EVALUATE the effectiveness of five key areas within the Product Management function: (1) People & Leadership, (2) Analytics & Insights, (3) Strategy & Planning, (4) Execution & Process, and (5) Performance & Results, with fully customizable 360-degree surveys.\n \u2022 LEVERAGE cutting-edge technology with Performax360 Unified Enterprise Performance Management Application Platform: Adaptive Neuro-Fuzzy Inference System, Context-Aware Intelligent Recommendation System, Stakeholder Sentiment Analysis driven by Cognitive Computing, the world's largest 'Best Practices' knowledgebase, Expert Panels comprising your Subject Matter Experts, and Real-Time Collaboration Hubs.\n \u2022 GAIN real-time, ongoing, and collaborative business intelligence on effectiveness trends within the Product Management function: identification of strengths and weaknesses, SWOT analysis, stakeholder sentiment analysis, Key Performance Indicators, and prioritized Ideas for Action.\n \u2022 VIEW & SHARE real-time assessment results through an interactive online format, or download them in PDF report or PowerPoint Presentation formats.\n \u2022 TRACK & MANAGE ongoing performance improvements within the Product Management function, by appointing a Key Person Accountable for specific action items, tracking real-time progress updates on action-plan implementation, and following task updates and real-time Gantt Charts.\n \n "}" style="font-size:13px;font-family:arial, sans, sans-serif;font-weight:bold;">REAL-TIME BUSINESS INTELLIGENCE ON THE 'PRODUCT MANAGEMENT' FUNCTION, DRIVEN BY ONGOING 360-DEGREE ENTERPRISE &amp; STAKEHOLDER COLLABORATION:<br />&bull; ENGAGE internal employees and other key stakeholders in an ongoing 360-degree real-time feedback process that focuses onCritical Success Factors (CSFs)for the Product Management function.<br />&bull; EVALUATE the effectiveness of five key areas within the Product Management function: (1) People &amp; Leadership, (2) Analytics &amp; Insights, (3) Strategy &amp; Planning, (4) Execution &amp; Process, and (5) Performance &amp; Results, with fully customizable 360-degree surveys.<br />&bull; LEVERAGE cutting-edge technology with Performax360 Unified Enterprise Performance Management Application Platform: Adaptive Neuro-Fuzzy Inference System, Context-Aware Intelligent Recommendation System, Stakeholder Sentiment Analysis driven by Cognitive Computing, the world's largest 'Best Practices' knowledgebase, Expert Panels comprising your Subject Matter Experts, and Real-Time Collaboration Hubs.<br />&bull; GAIN real-time, ongoing, and collaborative business intelligence on effectiveness trends within the Product Management function: identification of strengths and weaknesses, SWOT analysis, stakeholder sentiment analysis, Key Performance Indicators, and prioritized Ideas for Action.<br />&bull; VIEW &amp; SHARE real-time assessment results through an interactive online format, or download them in PDF report or PowerPoint Presentation formats.<br />&bull; TRACK &amp; MANAGE ongoing performance improvements within the Product Management function, by appointing a Key Person Accountable for specific action items, tracking real-time progress updates on action-plan implementation, and following task updates and real-time Gantt Charts.<br /><br /></span>

Hi,
Trying out scheduler with custom editor. Looked and tried out examples provided, works great. But when I tried creating my own, with dropDownList, numericTextBox, etc.
Somehow validation errors shows up (which are blank) at custom editor.
I already looked up TroubleShooting> Validation.
Below is my code based on custom-editor scheduler example:
View:
01.@using TelerikDemo2.Models;02.@(03. Html.Kendo().Scheduler<SchedulerViewModel>()04. .Name("scheduler")05. .Date(DateTime.Now)06. .StartTime(DateTime.Now)07. .Height(600)08. .Views(09. views =>10. {11. views.DayView(a => a.Selected(true));12. views.WeekView();13. views.MonthView();14. }15. )16. .Editable(e =>17. {18. e.TemplateName("CustomEditorTemplate");19. })20. .Timezone("Etc/UTC")21. .DataSource(d=>d22. .Model(m=> {23. m.Id(f => f.TaskID);24. m.Field(f => f.Title).DefaultValue("No title");25. m.RecurrenceId(f => f.RecurrenceID);26. })27. .Events(e => e.Error("error_handler"))28. .Read("Read", "Home")29. .Create("Create", "Home")30. )31.)32. 33.<script type="text/javascript">34. $.validator.setDefaults({35. ignore: ""36. });37. 38. kendo.ui.validator.rules.mvcdate = function (input) {39. return input.val() === "" || kendo.parseDate(input.val(), "dd/MM/yyyy") != null40. }41. 42. function error_handler(e) {43. if (e.errors) {44. var message = "Errors:\n";45. $.each(e.errors, function (key, value) {46. if ('errors' in value) {47. $.each(value.errors, function () {48. message += this + "\n";49. });50. }51. });52. alert(message);53. 54. var scheduler = $("#scheduler").data("kendoScheduler");55. scheduler.one("dataBinding", function (e) {56. //prevent saving if server error is thrown57. e.preventDefault();58. })59. }60. }61.</script>CustomEditorTemplate:
001.@model TelerikDemo2.Models.SchedulerViewModel002. 003.@{ 004. ViewContext.FormContext = new FormContext();005.}006. 007.@functions{008. public Dictionary<string, object> generateDatePickerAttributes(009. string elementId,010. string fieldName,011. string dataBindAttribute,012. Dictionary<string, object> additionalAttributes = null)013. {014. 015. Dictionary<string, object> datePickerAttributes = additionalAttributes != null ? new Dictionary<string, object>(additionalAttributes) : new Dictionary<string, object>();016. 017. datePickerAttributes["id"] = elementId;018. datePickerAttributes["name"] = fieldName;019. datePickerAttributes["data-bind"] = dataBindAttribute;020. datePickerAttributes["required"] = "required";021. datePickerAttributes["style"] = "z-index: inherit;";022. 023. return datePickerAttributes;024. }025.}026. 027.<div class="k-edit-label">028. @(Html.LabelFor(m=>m.PatientName))029.</div>030.<div data-container-for="patientName" class="k-edit-field">031. @(032. Html.Kendo().DropDownListFor(model=>model.PatientName)033. .OptionLabel("Select a Person")034. .DataTextField("PatientName")035. .DataValueField("PatientId")036. .DataSource(s =>037. {038. s.Read(r =>039. {040. r.Action("GetPatients", "Home");041. })042. .ServerFiltering(true);043. })044. .HtmlAttributes(new { style = "width:100%" })045. )046. @Html.ValidationMessageFor(m=>m.PatientName)047.</div>048. 049.<div class="k-edit-label">050. @(Html.LabelFor(model => model.Attendance))051.</div>052.<div data-container-for="attendance" class="k-edit-field">053. @(Html.Kendo().DropDownListFor(model => model.Attendance)054. .OptionLabel("Select Attendance Type")055. .DataTextField("Text")056. .DataValueField("Value")057. .BindTo(new List<SelectListItem>()058. {059. new SelectListItem()060. {061. Text = "OK",062. Value = "1"063. },064. new SelectListItem()065. {066. Text = "NS",067. Value = "2"068. },069. new SelectListItem()070. {071. Text = "CX",072. Value = "3"073. }074. })075. .HtmlAttributes(new { style = "width:100%" })076. )077. @Html.ValidationMessageFor(m=>m.Attendance)078.</div>079. 080.<div class="k-edit-label">081. @Html.LabelFor(model=>model.Today)082.</div>083.<div data-container-for="today" class="k-edit-field">084. @(Html.Kendo().NumericTextBoxFor(m=>m.Today)085. .Min(0)086. .Max(100)087. .Value(0)088. .HtmlAttributes(new { style="width:100%" })089. )090. @Html.ValidationMessageFor(m => m.Today)091.</div>092. 093.<div class="k-edit-label">094. @Html.LabelFor(model => model.Copay)095.</div>096.<div data-container-for="copay" class="k-edit-field">097. @(Html.Kendo().NumericTextBoxFor(m => m.Copay)098. .Min(0)099. .Max(100)100. .Value(0)101. .HtmlAttributes(new { style = "width:100%" })102. )103. @Html.ValidationMessageFor(m => m.Copay)104.</div>105. 106.<div class="k-edit-label">107. @Html.LabelFor(model => model.ExtraService)108.</div>109.<div data-container-for="extraService" class="k-edit-field">110. @(Html.Kendo().NumericTextBoxFor(m => m.ExtraService)111. .Min(0)112. .Max(100)113. .Value(0)114. .HtmlAttributes(new { style = "width:100%" })115. )116. @Html.ValidationMessageFor(m => m.ExtraService)117.</div>118. 119.<div class="k-edit-label">120. @(Html.LabelFor(model => model.Start))121.</div>122.<div data-container-for="start" class="k-edit-field">123. @(Html.Kendo().DateTimePickerFor(model => model.Start)124. .HtmlAttributes(generateDatePickerAttributes("startDateTime", "start", "value:start,invisible:isAllDay")))125. 126. @(Html.Kendo().DatePickerFor(model => model.Start)127. .HtmlAttributes(generateDatePickerAttributes("startDate", "start", "value:start,visible:isAllDay")))128. @Html.ValidationMessageFor(m => m.Start)129.</div>130. 131.<div class="k-edit-label">132. @(Html.LabelFor(model => model.End))133.</div>134.<div data-container-for="end" class="k-edit-field">135. @(Html.Kendo().DateTimePickerFor(model => model.End)136. .HtmlAttributes(generateDatePickerAttributes(137. "endDateTime",138. "end",139. "value:end,invisible:isAllDay",140. new Dictionary<string, object>() { { "data-dateCompare-msg", "End date should be greater than or equal to the start date" } })))141. 142. @(Html.Kendo().DatePickerFor(model => model.End)143. .HtmlAttributes(generateDatePickerAttributes(144. "endDate",145. "end",146. "value:end,visible:isAllDay",147. new Dictionary<string, object>() { { "data-dateCompare-msg", "End date should be greater than or equal to the start date" } })))148. @Html.ValidationMessageFor(m => m.End)149.</div>150. 151.<div class="k-edit-label">152. @(Html.LabelFor(model => model.IsAllDay))153.</div>154.<div data-container-for="isAllDay" class="k-edit-field">155. <input data-bind="checked: isAllDay" data-val="true" id="isAllDay" name="isAllDay" type="checkbox" />156. @Html.ValidationMessageFor(m => m.IsAllDay)157.</div>158. 159.<div class="k-edit-label">160. @(Html.LabelFor(model => model.RecurrenceRule))161.</div>162.<div data-container-for="recurrenceRule" class="k-edit-field">163. @(Html.Kendo().RecurrenceEditorFor(model => model.RecurrenceRule)164. .HtmlAttributes(new { data_bind = "value:recurrenceRule" }))165. @Html.ValidationMessageFor(m => m.RecurrenceRule)166.</div>
Model:
01.public class SchedulerViewModel : ISchedulerEvent02. {03. public int TaskID { get; set; }04. public string Title { get; set; }05. public string Description { get; set; }06. 07. private DateTime start;08. [Required]09. public DateTime Start10. {11. get12. {13. return start;14. }15. set16. {17. start = value.ToUniversalTime();18. }19. }20. 21. public string StartTimezone { get; set; }22. 23. private DateTime end;24. [Required]25. public DateTime End26. {27. get28. {29. return end;30. }31. set32. {33. end = value.ToUniversalTime();34. }35. }36. 37. public string EndTimezone { get; set; }38. 39. [Display(Name ="Recurrence")]40. public string RecurrenceRule { get; set; }41. 42. public int? RecurrenceID { get; set; }43. public string RecurrenceException { get; set; }44. public bool IsAllDay { get; set; }45. public int? OwnerID { get; set; }46. 47. [Required]48. [Display(Name ="Person")]49. public string PatientName { get; set; }50. 51. public string Attendance { get; set; }52. public int Today { get; set; }53. public int Copay { get; set; }54. public int ExtraService { get; set; }55. 56. public Task ToEntity()57. {58. return new Task59. {60. TaskID = TaskID,61. Title = Title,62. Start = Start,63. StartTimezone = StartTimezone,64. End = End,65. EndTimezone = EndTimezone,66. Description = Description,67. RecurrenceRule = RecurrenceRule,68. RecurrenceException = RecurrenceException,69. RecurrenceID = RecurrenceID,70. IsAllDay = IsAllDay,71. OwnerID = OwnerID,72. PatientName = PatientName,73. Attendance = Attendance,74. Copay = Copay,75. ExtraService = ExtraService,76. TodayCopay = Today77. };78. }79. }What did I do wrong? Help please? Thanks.