We all know that the default JavascriptSerializer built into ASP.NET leaves much to be desired, which is why developers are swapping out the built in one from ASP.NET for others such as JSON.NET and ServiceStack. The issue that a lot of developers encounter when working with the MVC Wrappers is that it appears to be using the build in JavascriptSerializer, which is miserably slow and hard to work with when trying to take data from an ORM (with navigation properties) and display it on the Grid. Most of our grids closely represent a table in our database, but because the JavascriptSerializer doesn't support any type of navigation properties, we are always forced to write some DTO that flattens the object out to contain just simple datatype properties. If we could REPLACE the JavascriptSerializer with our own framework - such as JSON.NET or ServiceStack, then we would be able to get our job done a lot faster without the extra plumbing. This feature would mean that this "known issue" could be resolved by people simply swapping the JavascriptSerializer for a better one: http://docs.kendoui.com/getting-started/using-kendo-with/aspnet-mvc/helpers/grid/troubleshooting#a-circular-reference-was-detected-while-serializing-an-object-of-type
Include an x.js as well as x.min.js files in the upgrades. MVC's bundle config by default does not include the .min file in debug mode.
There should be capabilities to group parent resources to selected child resources Currently the Scheduler groups all child resources under each parent resource. Example Resources: Parent resources: New York Tennis Club, California Tennis Club Child Resources: Court 1, Court 2, Court 1, Court 2, Court 3, Court 4 Currently the Scheduler groups parent and child resources as: - New York Tennis Club is grouped with Court 1, Court 2, Court 1 and Court 2, Court 3, Court 4 - California Tennis Club is grouped with Court 1, Court 2, Court 1, Court 2, Court 3 and Court 4 I would like the capability to group parent resources with selected child resources, in my situation im trying to achieve this structure of grouping: Desired Grouped Resources: - New York Tennis Club is grouped with Court 1 and Court 2 - California Tennis Club is grouped with Court 1, Court 2, Court 3 and Court 4. If you look at the Syncfusion Scheduler, they have this feature, it would be nice if the Telerik/Kendo Scheduler could do this.. If you look at the link i provided below, you can see that the Syncfusion Scheduler allows multiple resource groups which has the capability to group parent resources to selected child resources. Syncfusion Scheduler Demo shows: Room 1 is grouped to Nancy and Michael Room 2 is grouped with Steven http://mvc.syncfusion.com/demos/web/schedule/resourcegrouping
c.Bound( o => o.Complex.Property ) This throws a js exception when o.Complex is null. The grid fails to render when certain data is bound. c.Bound( o => o.Complex == null ? null : o.Complex.Property ) This throws a .NET InvalidOperationException : "Bound columns require a field or property access expression"
Currently telerik MVC grid with DateTime column render datetime in local time zone. Nothing but if browser is accessing the site from CST time zone, grid automatically converting EST time to CST and shows value in CST. We have seen workaround as saving and showing data in UTC format. However this is not acceptable for some business scenarios. It’s better to have option to enforce grid to render date time as is input data. So that it will show consistent date time irrespective of local time zone.
Ability to hide buttons like edit based on conditions should be straight forward like this: command(cmd => cmd.Custom("Edit").Click("blah").Visible(condition => condition.Status == "Current")
Kendo UI MVC server-side wrappers are much more easier to work with but not possible to do a full SPA application and UI experience is slow. Can you come with an idea to allow development using server-side wrappers but then deploy application as client-side SPA converting server-side wrappers to client-side SPA code?
I think it would be more helpful if the Kendo UI Documentation is structured similarly to other Telerik Product Documentations where each control (widget) provides a complete overview, visual structure, getting started, and a how-to section (which I'm guessing is a compiled list of frequently asked scenarios). I'm struggling/spending too much time having to research how to do (what should be) the simplest things with these widgets. It seems that' I'm having to revert to the Demo's and online threads more than the documentation.. that' can't be good!
When you export a sheet to Excel the Sheet is export as not-protected. If there are cells that are locked then the user can edit them. It would be really useful if you could specify tha a sheet were protected and when the sheet is exported it would be protected with a password.
To have a consistent look in grids toolbar, it should be possible to add an icon class to custom buttons. Not possible through .HtmlAttributes() because those gets applied to the wrapper link and kendo icons are displayed via inner span tag. .ToolBar(toolbar => { toolbar.Create(); // Has [+]-Icon toolbar.Custom().Text("My Custom Button"); // Does not have an icon } Would be nice to have an option like toolbar.Custom().Text("Reset Grid Settings").Icon("k-i-funnel-clear"); which results in <a href="/Tarife" class="k-button k-button-icontext"> <span class="k-icon k-i-funnel-clear"></span> Reset Grid Settings </a>
It would be nice if grid could load edit and create forms from server side by get request.and then save them by post request. it would be much more easier if some fields in edit/create form could be saved without loading in grid. And also there would be much better control on load data if it is possible to check some conditions in edit form through server. At the end I suggest to change grid widget to: @(Html.Kendo().Grid<Model>() .DataSource(ds => ds .Ajax() .Read(r => r.Action("FillGrid", "Controller")) .GetCreateForm(c => c.Action("Create", "Controller", "Get")) .Create(c => c.Action("Create", "Controller", "Post")) .GetEditForm(u => u.Action("Edit", "Controller", "Get")) .Update(u => u.Action("Edit", "Controller", "Post")) )
The Telerik MVC wrappers do not innovate at the same pace as Kendo UI Proper. They are missing attributes and actions that are available in the javascript versions, and it is plain to see that some features will be added when you guys "get around to it". It would be so much better for customers if you guys would post the code to the Telerik organization on GitHub, and make it private, then allow customers to sign CLAs and have access to the source. That way, those of us (like myself) who have added new features and are maintaining their own branches internally can submit PRs to add our own value to a product we pay a heck of a lot of money for. I personally would be able to close at least 5 requests on this forum from submitted pull requests, just in work I've already done. Thanks for your consideration.
I would expect a fluent method chain to not produce side effects when a method is invoked more than once. particularly, concerning the ability to apply HtmlAttributes more than once to a method chain. This prevents me from implementing meaningful extension methods to promote a DRY approach to views. In particular, I am trying to do something like this: public static TextBoxBuilder<TProperty> PasswordFor<TModel, TProperty>(this WidgetFactory<TModel> widgetFactory, Expression<Func<TModel, TProperty>> expression) { return widgetFactory.TextBoxFor(expression).HtmlAttributes(new { type = "password" }); } public static TextBoxBuilder<TModel> AutoFocus<TModel>(this TextBoxBuilder<TModel> builder) { return builder.HtmlAttributes(new { autofocus = true }); } I am finding that because the HTML attributes is cleared in your base implementation.. this.Component.HtmlAttributes.Clear(); it doesn't support an aggregation of attributes, but instead it's last-man-in. that defeats the purpose of extensibility and effectively insists upon repetition and sort of brittle design that a copy/paste architecture results in. I would believe it be completely acceptable to give the last-attribute-applied precedence and overwrite the value, but the reality is that we're talking about basic key/value pairs, and it shouldn't be difficult to merge the attributes as they are built. best case, right now i have to implement my own derivation of the WidgetBuilderBase and implement an extension method off the WidgetFactory that bootstraps my functionality - certainly not a stretch, but more work than should probably be necessary. public virtual TBuilder HtmlAttributes(object attributes) { return this.HtmlAttributes(ObjectExtensions.ToDictionary(attributes)); } public virtual TBuilder HtmlAttributes(IDictionary<string, object> attributes) { this.Component.HtmlAttributes.Clear(); Kendo.Mvc.Extensions.DictionaryExtensions.Merge(this.Component.HtmlAttributes, attributes); return this as TBuilder; }
Here is how the support team explained the priority of what editor template is used in the MVC grid: "Actually the behavior is if the EditorTemplateName method is not used to specify template then the ForeignKey editor template is used. If the EditorTemplateName method is used - the template which is passed is used. If there is no such template, it fallbacks and uses the UIHint attribute or if there is not such the default one is used." I'd think the priory should be: 1.) If EditorTemplateName is specified, use that, 2.) If UIHint in Model class is specified, use that, 3.) Then use default editor template (i.e. ForeignKey.cshtml)
Create an mvc reportviewer control for MVC so that you don't have to hack it with an aspx page inside of razor view engine. Should work similar to the devexpress mvc reportviewer control.
In the Text Editor, I would like to suggest an upgrade to "Insert hyperlink". It would be great if you would split out the prefix from the address and have a selector that allows the user to choose website, email, or phone. Selector: Website/Email/Phone Address:sales@kendoui.com Text: Kendo UI Tooltip: Click Here Open Link in new window: No Results: <a href="http://www.kendoui.com">Kendo UI</a> <a href="mailto:sales@kendoui.com">Kendo UI</a> <a href="tel:8883652779">Kendo UI</a>
I believe your Ajax editor does this already, so can it please be added to the MVC one?
Also, we have just moved from a different editor to Telerik's, and the previous one did have this feature. Thanks!
The tools should have all the options as the javascript for example: Gantt custom views can only be used if you use the JavaScript version. The lack of full support defeats the point of buying a MVC wrapper.
Currently, if a developer wants to include only those files required for the extensions that are actually used in a project, they have to either figure the requirements out manually, or use the Custom Download tool at http://www.telerik.com/download/custom-download. It would make the Visual Studio extension much more useful if the same functionality was available there; instead of dumping all of the JS and CSS files into the project, allow the developer to select the wrappers to include, and only include the CSS (and relevant assets) for the selected theme.