I have a scheduler that I've created in MVC and reset the data with via javascript
@(Html.Kendo().Scheduler<MyProject.Models.Schedule.Kendo.ISchedulerData>()
.Name("edit-scheduler")
.Date((DateTime)MyProject.Helper.Date.StringToDateTime(ViewBag.EventHeader.StartDate.ToString("MM/dd/yyyy")))
.StartTime((DateTime)MyProject.Helper.Date.StringToDateTime(ViewBag.EventHeader.StartDate.ToString("MM/dd/yyyy")))
.EndTime((DateTime)MyProject.Helper.Date.StringToDateTime(ViewBag.EventHeader.EndDate.ToString("MM/dd/yyyy")))
.EventTemplate(
"#=eventTemplate(SupplierNumber,SupplierName, MeridiemDeliveryTime, OrdersReadable, OrderGroup1,OrderGroup2,OrderGroup3,OrderGroup4,OrderGroup5,OrderGroup6,OrderGroup7,OrderGroup8,IsEvent,Color)#"
)
.Views(views =>
{
views.MonthView(month =>
{
month.Selected(true);
month.EventsPerDay(20);
month.AdaptiveSlotHeight(true);
month.EventHeight("auto");
month.EventSpacing(5);
});
})
.Timezone("EST")
.Editable(true)
.Editable(editable => editable.Confirmation(false))
.Resources(resource =>
{
resource.Add(m => m.ActiveSupplierNumber)
.Title("Owner")
.DataTextField("Text")
.DataValueField("Value")
.DataColorField("Color")
.BindTo(ViewBag.Colors);
})
.DataSource(d => d
.Read(read => read.Action("GetStoreSchedule", "ScheduleData").Data("scheduler_Data"))
)
.Events(e =>
{
e.Remove("scheduler_Remove");
e.Edit("scheduler_Edit");
e.MoveEnd("scheduler_MoveEnd");
e.MoveStart("scheduler_MoveStart");
e.ResizeStart("scheduler_ResizeEnd");
e.DataBound("scheduler_DataBound");
})
)With my scheduler_Data() like this
var _eventHeaderId = 1;
var _stageId = '0B579CE9-2CB8-4ACF-9EC1-892378632823'; // This changes frequently
function scheduler_Data() {
var store = $("#edit-store-dropdown").data("kendoDropDownList").value();
var supplier = $("#edit-supplier-dropdown").data("kendoDropDownList").value();
var sdata = {};
sdata["eventHeaderId"] = parseInt(_eventHeaderId);
sdata["stageId"] = _stageId;
sdata["store"] = parseInt(store);
sdata["supplier"] = parseInt(supplier);
return sdata;
}The first time the page loads, there is no store, the controller does not return data, the scheduler remains blank (exactly as expected)
As I do other things on the page, the store dropdown has a value, and I run some code that updates the _stageId and does some database work, then it refreshes the scheduler, which basically is just me doing this.
scheduler.dataSource.read();
scheduler.refresh();This all works perfectly. My scheduler populates from the database. However, if I click into a day (triggering scheduler_Edit) - it creates the event offset by one day, if there is at least 3 other events in the previous day. So if Sunday has 3 events, and I click Monday, it adds the event to Sunday. If I have 2 events on Sunday and click Monday, it adds the event to Monday
So I put some code into scheduler_Edit()
console.log("You clicked " + e.event.start);If I cancel my custom edit window, and click in the same place on scheduler it populates exactly where it should
And the console bears that out
And from that point, it adds to the correct day until I redo the refresh scheduler code
scheduler.dataSource.read(); scheduler.refresh();
Then it happens again?
Am I doing something weirdly wrong?

Hello everyone,
I have a clientfootertemplate in a subcolumn and I want to show something in my column but when I do this the colspan is 3 instead of 1 so instead of 1 column he takes 3 columns.
Can someone help me with this?
I want to do something like what happens at http://demos.telerik.com/aspnet-mvc/treeview/checkboxes, where when you click a node, its parent nodes light up but are not checked. I've looked at the demo and can't figure out how to make this happen. Any ideas would be helpful.
It's the end of the day on Friday, so I don't really have time right now to come up with samples of my code. If no one has an idea by Monday, I will do that.
Thanks!
Laurie
Hi, after following the guide on setting the colour of tasks on data binding, which worked great, we have noticed an issue. If we have something like the following tree
Level 1
-- Level 2
---- Level 3
---- Level 4
Level 5
Level 6
If level 3 and 4 have a background colour set to say purple.... its working fine, but if we collapse Level 2, Level 5 and 6 have the background colour changed to purple as Level 3 and 4 would have been.
From looking at the source code, Levels 5 and 6 seem to replace the details in the rows for Level 3 and 4 but don't change the styling used. What we need to do is on collapsing the level, we need to repaint the rows to refresh the styling.
Is there any event we can use to detect the expanding / collapsing function so i can call another function which repaints the displayed tasks? I've included 2 screenshots which demonstrate the behaviour.
I have set a java script method
validatePhoneto be called for customeValidator against any change on a RadMaskedTextBox. But its never gets called.
Can you please help whats wrong here?
<td>
<telerik:RadMaskedTextBox ID="sNumberPhoneMasked" runat="server" SelectionOnFocus="CaretToBeginning"
Text='<%# SafeEval(Container, "DataItem.Test") %>' ValidationGroup="PhoneValidationGroup1" ></telerik:RadMaskedTextBox>
<asp:Label ID="sNumberPhoneMaskedValidationIndicator" runat="server" class="WizardValidationRequired_Person vAdjustment" >*</asp:Label>
<asp:CustomValidator runat="server" ID="sNumberPhoneMaskedValidator" ValidationGroup="PhoneValidationGroup1" ErrorMessage="Phone Number is required."
SetFocusOnError="true" ControlToValidate="sNumberPhoneMasked" ClientValidationFunction="validatePhone"></asp:CustomValidator>
<asp:ValidatorCalloutExtender ID="sNumberPhoneMaskedPopupValidator" runat="server"
TargetControlID="sNumberPhoneMaskedValidator" Width="200px" />
</td>
<td align="right" colspan="2">
<asp:Button ID="sPhoneGridEditFormSubmit" CssClass="button-blue" Text='<%# (Container is GridEditFormInsertItem) ? "Add" : "Update" %>'
runat="server" CommandName='<%# (Container is GridEditFormInsertItem) ? "Add" : "Update" %>' ValidationGroup="PhoneValidationGroup1"
CausesValidation="True"></asp:Button>
<asp:Button ID="sCancel" CssClass="button-blue" Text="Discard" runat="server" CausesValidation="False"
CommandName="Cancel"></asp:Button>
</td>
<script type="text/javascript">
function validatePhone(Source, args) {
debugger;
alert('test');
args.IsValid=false;
}
</script>

Hi,
I'm looking for some guidance on the best way to pivot data that is being returned from a .NET MVC controller. I'm able to read it into the regular grid by doing the following :
@(Html.Kendo().Grid<Project.Models.viewMyModel>()
.Name("grid")
.ToolBar(tools => tools.Excel())
.Columns(columns =>
{
columns.Bound(p => p.Field1).Width("auto");
columns.Bound(p => p.Field2).Width("auto");
columns.Bound(p => p.Field3).Width("auto");
columns.Bound(p => p.Field4).Width("auto");
})
.Excel(excel => excel
.FileName("Report1.xlsx")
.ProxyURL("Report?handler=Save")
.AllPages(true)
)
.Height(550)
.AutoBind(false)
.Pageable()
.Sortable()
.Scrollable()
.Resizable(r => r.Columns(true))
.Filterable()
.DataSource(dataSource => dataSource
.Ajax()
.Read(read => read.Action("GetSummary", "Reports").Data("getParams"))
.PageSize(100)
.ServerOperation(false)
)
.Events(ev => ev.ExcelExport("onExcelExport"))
.NoRecords(n => n.TemplateId("no-records-template-id"))
)
The form post submits some date parameters to the 'GetSummary' controller and returns the json data source for the grid.
I would like to pivot these results so that Field1 results are my column headers and the other fields are my rows. Would PivotGrid be a good option or is that overkill? If so - I wasn't sure how to get it to read the json results as as I did with the grid above. Or would you suggest I pivot/manipulate the data beforehand and continue to read with the traditional grid method?
Thanks,
Adam
At some point the telerik textbox has become a full widget and it generates a script.
I have a form where I need to have an input and it should look like the telerik textbox. I do not want to use the span / input template I just need to have the input alone.
I know I can define my own styling but I would need just a telerik class on the input that if I change something to be applied to all telerik textboxes.
Hi,
I have this code here inside the form and only code for the switch(), :
<div class="create-section">
@(
Html.Kendo().Form<WeighmoreSouth32Web.Models.Role>()
.Name("createForm")
.HtmlAttributes(new { action = "Create", method = "POST" })
.Validatable(v =>
{
v.ValidateOnBlur(true);
v.ValidationSummary(vs => vs.Enable(true).TemplateId("validation-message"));
})
.Items(itemGroup =>
{
itemGroup.AddGroup().Layout("grid").Grid(g => g.Cols(3).Gutter(20)).Label("Role Info").Items(items =>
{
items.Add()
.Field(f => f.RoleName)
.Label(l => l.Text("Role Name"));
items.Add()
.Editor(e => e.Switch().Name("AddCustomer")).Field(f => f.AddCustomer)
.Label(l => l.Text("Role Name*:"));
});
})
)
</div>it is working fine for the textbox input but when I use switch to pass the true value it is passing it two times one true and other one false. But it does not do the same when switch is off, only passes the false value. Here is a picture of it. I did also tried some Js/Jquery code to bind it but it didn't worked as well. Please help.
https://docs.telerik.com/aspnet-mvc/html-helpers/data-management/listview/binding/ajax-binding
@(Html.Kendo().ListView<ListViewCore.Models.OrderViewModel>() .Name("ListView") .TagName("div") .ClientTemplateId("template") .DataSource(dataSource => dataSource .Ajax() .PageSize(6) .Read(read => read.Action("Orders_Read", "ListView").Data("additionalData")) ) .Pageable() ) <script> function additionalData() { return { firstName: "John", lastName: "Doe" }; } </script>
the .Ajax() instantly doenst work. EVERY sample fails !!!
Anyone have a listview<T> that actually works? the demos and samples all fail.
