I am having trouble with comboboxes that are in a grid. The first time I type in a value (e.g. 044), it filters to the 044 items and selects the first one perfectly. If I then go back to that field and type 043, it filters correctly but as you can see in the attached image, it does not select the first item. This means that when I hit tab or enter to exit the column, I throw an error because the field is required. Why is this not working the second time I filter? I can do this over and over again where it filters once and then not the next time and then it works and then it doesn't. What am I missing?
Here is the editor I am using. I have tried both clientside and serverside filtering and loading as you can see. Nothing helped. It is a big list but not huge (around 1000 items in the list).
@(Html.Kendo().ComboBoxFor(m => m)
.Name("TransactionCode_Code") // Name of the widget should be the same as the name of the property
.DataValueField("Code") // The value of the dropdown
.DataTextField("CodeDescription") // The text of the items
.BindTo((System.Collections.IEnumerable)ViewData["TransactionCodes"]) // A list of all TransactionCodes which is populated in the controller
//.DataSource(dataSource =>
//{
// dataSource.Read(read =>
// {
// read.Action("GetTransactionCodesCash", "Utility").Data("filterTransactionCodesCash");
// })
// .ServerFiltering(true);
//})
.Placeholder("Select one...")
.HtmlAttributes(new { style = "width:90px" })
.Height(350)
.Filter(FilterType.StartsWith)
//.AutoBind(true)
.HighlightFirst(true)
.Suggest(true)
.Events(e => e.DataBound("transactioncode_dataBound").Change("transactioncode_changed").Filtering("transactioncode_filter"))
//.Events(e => e.Change("transactioncode_changed"))
.ClearButton(false)
.MinLength(3)
)