It would be nice to have the IF and IFNOT bindings like KnockoutJS has. It would help keep the DOM cleaner instead of having to use the Visible binding.
Currently when there are any errors in data-bind attributes you usually get some array out of bound indexing error (in parseBinding()) or some other obscure error. This suggestion is to trap these errors more aggresively and provide better error messages.
Trying to bind to the 'id' and 'for' properties gives an error that this is not supoprted. Both are basic bindings and should be suported.
Currently if you have combos that are bound via MVVM or knockout etc and have a kendo data source on them for doing suggest lookup they will query everything without a filter to get the display value for the bound value that is set to the value property of the combo. I should be able to pre-populate an initial set of data on the datasource which it will use when the value property is set. If and only if it isn't set, it should then go and do an odata query with filtering for the specific item and only the specific item based on the field that the dataValueField is bound to, not everything. Further the combobox and auto-complete should cache data and searches previously done so that it doesn't have to hit the data source again in these scenarios as the user types.
Mobile app should be able to save the data locally in the mobile device and when online network status is detected, should have the mechanism to synchronize the local data back to the server. I asked this during the webcast demo about supporting the html5 local web storage or the html5 indexeddb.
Instead of using JSON to create a pie chart in Dataviz, it would be so much easier to use an SQLDataSource, So that the pie chart can be dynamically updated.
The DataSource Model including validation should come from the server and not defined within javascript where possible. There should be two primary ways to populate the model using the DataSource widget. 1.) Retrieved from the DataSource call itself as a JSON property off of the data call. You should be able to define a schema: { parseModel: function(data) { return data.model } } to retrieve the model directly from the data call. 2.) You should be able to specify the schema: { model: new DataSource({ ... }) }. The model itself should be DataSourcable so you can retrieve (with ETag/Last-Modified and Cache-Control) the model as a separate request alongside the data. Given that you should be able to retrieve the model as a separate request, you should be given the opportunity to augment/modify the model within the client side using something like schema: { changeModel: function(model) { // Supplement Model here } }
Add a Kendo UI Mobile Listview with real time cross domain data binding and this could be a simple modification of your current listview demo, where instead of using the hard coded data, use the real time data which is hosted on a website (i.e. google or twitter) and bind that data (json) to the listview...
As suggested here - http://kendo.uservoice.com/forums/127393-kendo-ui-feedback/suggestions/2522564-server-rendering-for-templates I plan on rendering javascript on the server for a single unified binding codebase. Except, I plan on implementing my own rendering engine and have no need for you to do that for me. However, kendo needs to bind everything and enumerate the DOM such as my question here - http://www.kendoui.com/forums/ui/dropdownlist/dropdownlist-autobinding-dom.aspx. For Kendo to be used on the server side it has to (optionally) render things like dropdown lists, grids, etc completely and control visibility based on CSS rather than partially rendering the DOM (understandably for DOM performance). ie. disable virtualization option for all controls. Make sure that Kendo works with server-side rendering for SEO purposes otherwise it's useless for my intended use. This feature is necessary for server-side rendering with - http://kendo.uservoice.com/forums/127393-kendo-ui-feedback/suggestions/2678704-single-page-application-spa- in combination with https://developers.google.com/webmasters/ajax-crawling/.
It should be possible to specify a validate() method on each viewmodel that gets triggered each time a new model value is .set(). In case of an unsuccessful validation an error event or binding could be triggered.
We are evaluating migrating from Asp MVC to KendoUI (MVC), which looks promising. However, there is one BIG problem we have encountered: Cell values of null are displayed as "Null" instead of as ""! I really urge you to change this since this would require large changes to very many places otherwise. At least an option to select the behaviour. Thanks /Victor
Currently Kendo MVVM only supports a very simple binding syntax, one view attribute can be bound to one model attribute. I'd like to have real javascript expressions or function calls in bindings to support more complex scenarios, e.g. you only want to show the "submit" button in a form when all fields have been completed. KnockOutJS supports this: http://knockoutjs.com/documentation/visible-binding.html#note_using_functions_and_expressions_to_control_element_visibility
Is there planned support for JSON-RCP for DataSource? At least something that does batches? Using REST is fine for example code, but otherwise can result in many connections, etc. While a bigger problem in mobile, it still makes a difference in desktop. ExtDirect and json-rcp both seem to fit the bill.
dataSource: { type: "odata", typeversion: "3" }
See this forum post for details: http://www.kendoui.com/forums/framework/mvvm/getting-access-to-array-index-while-binding-an-array-source.aspx
As of today, it is possible to create custom "simple" bindings as per this code sample: http://demos.kendoui.com/web/mvvm/custom.html This works fine, but it would be appreciated to be able to create custom bindings with "complex" syntax, such as this: data-bind="foo: {condition: somePropertyOnViewModel, option1: A, option2: B }"
In the context of MVVM bindings, it would be great to have a way to evaluate certain conditions/expressions, especially within template bindings, by "navigating" to other properties of the ViewModel, or to other properties of the currently iterated object. For example: <ul data-role="listview" data-bind="source: anObservableObject" data-template="some-template"></ul> <script id="some-template" type="text/x-kendo-template"> <li data-bind="text: whatever, visible: $source.someProperty == $data.otherProperty"></li> </script> In this example, $data refers to the current iteration data, and $source refers to the source. So the visible binding would be true/false according to the expression which would evaluate an arbitrary property on the source and an arbitrary property on the iterated object. This is similar to Knockout's mechanism and it allows for greater flexibility within templates.
Though KendoUI already has an MVVM style binding, it would be much better to have a css binding allowing us to set class on HTML elements based on arbitrary conditions. Just look at the Knockoutjs css binding.
Something like this: transport: { read: "http://localhost/SentryWebAPI/api/Transactions", datatype: "json", headers: { Authorization: "user/password" } }, NOTE: This syntax actually works now but does not get propagated with the HTTP request Headers. I think this would be a simple fix as JQuery.$ajax supports this. It would make custom transport level security possible. There are a lot of requests for security and this would allow a roll-your-own method.
If my callback takes 10ms or 300ms I still get the control whiting itself out and showing a loading animation. Problem though is if it takes 10ms it looks like the control is flickering. Let me set a min duration before the animation shows up. So I could say only show the loading animation if it's taking longer than 100ms.