Hi,
We are using globalization with UI for ASP.NET MVC to translate control to French (fr-CA). However, while most messages are correctly displayed in French, there are some that are still displayed in English. For example, if we use the Grid control with filter on a 'string' column, the dropdown for the operators shows both French ("Commence par") and English ("Is empty") operators:
Looking at the source code, we can see that in ressource files "Messages.fr-FR.resx" and "Messages.fr-CA.resx", there are some messages that are still in English (for example, Filter_StringIsEmpty).
Note that corresponding text seems to be correctly translated in jQuery messages file (for example, "kendo.messages.fr-CA.js"), so it might only be a matter of applying the same translation to .resx files.
Note also that the same problem seems to be present in the source code of the latest version (2020.1.114).
Thanks!
After using setOptions() the HTML structure of Grids column header is different.
In the following demo:
https://demos.telerik.com/aspnet-mvc/grid/persist-state
When the button is clicked, setOptions() called for the Grid and the structure of the column headers is now different.
When setOpitons() is called with no options that may affect the headers the HTML structure of the column headers should be the same.
Passing a dynamic object to a template column builder throws an exception:
c.Template(m => { })
.ClientTemplate("<input type='checkbox' value='#= Id #' />")
.Visible(ViewBag.Can.Edit);
Using an explicit cast doesn't throw the error:
c.Template(m => { })
A regression introduced in R1 2022.
Reproducible with the RadioButton and RadioButtonFor helpers.
@Html.Kendo().RadioButton().Name("HealthA1").Label("Yes").Value(true).HtmlAttributes(new { id = "HealthA1_True" })
@Html.Kendo().RadioButton().Name("HealthA1").Label("No").Value(false).HtmlAttributes(new { id = "HealthA1_False" })
The rendering is broken: no label element is rendered, the Kendo classes are not applied to the input.
The RadioButton renders properly.
The Kendo Scaffolder is no longer available in the Add New Scaffolded Item dialog.
The Kendo Scaffolder works as intended.
If I specify "SortMode.Mixed" for a Grid's "SortMode" (via the .Sortable fluent method), the sort mode in the JavaScript initializer is set to "multiple" instead. This can even be seen on the MVC Demo page here: https://demos.telerik.com/aspnet-mvc/grid/sorting (the "mixed" demo behaves just like "multiple").
In the Kendo MVC source code for 2022.1.301, the GridSortableSettings.Serialize method appears to use the following logic:
if (SortMode != GridSortMode.SingleColumn)
{
json["mode"] = "multiple";
}
With the latest 2022 release, the grid toolbar seems to be rendering buttons incorrectly. It is generating them with k-button and k-button-icontext classes only on them. I don't 100% know this is wrong, but i expected them to render with k-button-solid-base and k-rounded-md classes, and i'm pretty sure i saw docs saying the icontext is not used anymore.
Note: this is about the mvc wrapper.
The columns widths do not match the header and are slightly off, and after enough columns it is half a column out.
Regression introduced in R1 2022.
Reproducible in the demo: https://demos.telerik.com/aspnet-mvc/grid/search-panel
There is a difference in the rendering of the search panel.
MVC:
<span class="k-textbox k-grid-search k-display-flex">
<input autocomplete="off" class="k-input" placeholder="Search..." title="Search..." type="text">
<span class="k-input-icon">
<span class="k-icon k-i-search"></span>
</span>
</span>
Kendo UI for jQuery and Core:
<span class="k-searchbox k-input k-input-md k-rounded-md k-input-solid k-grid-search">
<span class="k-input-icon k-icon k-i-search"></span>
<input autocomplete="off" placeholder="Search..." title="Search..." class="k-input-inner">
</span>
As a result, in MVC the search panel's magnifying glass is displayed outside the input.
Additionally, the search panel's appearance in Kendo UI for jQuery and Core is different than the one in the previous versions. In R3 2021, the input is positioned on the left hand side of the Grid's toolbar and the magnifying glass appears at the right end of the input. In R2 2022, the input is positioned on the right side of the toolbar and the magnifying glass is displayed at the beginning of the input.
R3 2021 dojo
R1 2022 dojo
Positioning of the input within the toolbar and the magnifying glass icon within the input, to be as in R3 2021.
I'm not sure if this is a bug but if you leave the size off of a column, it stretches to fill the remaining area. However I discovered that this does NOT happen if you lock one of your columns. If you do this, the column doesn't render at all.
Editor => Imagebrowser path for subfolder is url-encoded
if a picture from a subfolder is selected, the generated image-url is encoded for the subpath
encoding may be usefull, but not for the path separator
Not reproducible with Sass themes.
https://dojo.telerik.com/ejaVeZUD/7
Map custom markers are not positioned correctly when zooming out using 'Less' themes
Markers are positioned correctly when zooming out.
<script>
//my amazing function|
function() {
var x = 0;
doSomething();
}
UI Component name doesn't validate if there are spaces being used, (an expression is used for name). When spaces are used it doesn't work and throws no errors at all in web console or visual studio output window.
For example if we use an Telerik expression (like we did) as part of the name it will break if said expression returns a value with a space. Which in hindsight makes 100% sense. I think it would be beneficial to any developers in the future if there was a layer of validation that would check to see if a UI component name has a space in it which will break the component functionality.
In the Telerik-example.png I showed what the fields Im searching by are and you can see grid 1 is loading (which is correct and will work when I continue through the process) However grid 2 simply shows/outputs nothing in the grid at all, and the name of the grid is the black underlined field. Which is breaking due to the space being there.
Hi there,
We've just hit a strange issue. We have a DropDownList called "Title" that displays "Mr", "Mrs", "Ms" etc. However, we sometimes noticed that the Title submitted to the form was "LoanBorrower". This was strange as the only place "LoanBorrower" existed was in the MVC back end of the page with "ViewBag.Title = "LoanBorrower".
It appears that if the ViewBag has an entry with the same name as a Kendo form element, the elements default value is being set as the value in the ViewBag.
I have tried this with ViewBag entries other than Title, and the result is the same.
At the top of my "Borrower.cshtml" page I have the following:
@{
ViewBag.Title = "LoanBorrower";
}
I stripped the DropDownList down to the bare minimum and still had the problem:
@Html.Kendo().DropDownListFor(m => m.Title)
The control rendered as the following. Note the value is set to "LoanBorrower" which is the value in ViewBag.Title:
<input data-val="true" data-val-length="Title must be between 1 and 20 characters" data-val-length-max="20" data-val-length-min="1" data-val-required="Select a title." id="Title" name="Title" type="text" value="LoanBorrower" />
<script>
kendo.syncReady(function(){jQuery("#Title").kendoDropDownList({});});
</script>
I then changed the Kendo control to a Kendo TextBox and had the same problem:
@Html.Kendo().TextBoxFor(m => m.Title)
The control rendered as the following. Again, the value is set to "LoanBorrower":
<input data-val="true" data-val-length="Title must be between 1 and 20 characters" data-val-length-max="20" data-val-length-min="1" data-val-required="Select a title." id="Title" name="Title" value="LoanBorrower" />
<script>
kendo.syncReady(function(){jQuery("#Title").kendoTextBox({});});
</script>
I then changed the control to a standard HTML Textbox and no longer had the issue.
@Html.TextBoxFor(m => m.Title)
The control rendered as the following. Note that this time, the value is an empty string which is correct.
<input data-val="true" data-val-length="Title must be between 1 and 20 characters" data-val-length-max="20" data-val-length-min="1" data-val-required="Select a title." id="Title" name="Title" type="text" value="" />
Using Visual Studio Enterprise 16.0.0.
Created MVC Project 4.6.1
Run Telerik utility to "Convert to Telerik Web Application" from Project context menu. On a clean project just created from the VS Template.
Error output from from Telerik VSX:
An error occurred while running the wizard.
Error executing custom action Telerik.KendoUI.Mvc.VSX.Actions.UpdateWebConfigAction: Could not instantiate a TextTransformation object from the compiled assembly. The following Exception was thrown:
System.InvalidCastException: Unable to cast object of type 'Microsoft.VisualStudio.TextTemplating1fd31dc42b754a598ac1cf6e6d72e8f7.GeneratedTextTransformation' to type 'Microsoft.VisualStudio.TextTemplating.TextTransformation'.
at Microsoft.VisualStudio.TextTemplating.TransformationRunner.CreateTextTransformation(String fullClassName, ITextTemplatingEngineHost host, Assembly assembly, ITextTemplatingSession userSession)
<?xml version="1.0" encoding="utf-8"?>
<!--
For more information on how to configure your ASP.NET application, please visit
https://go.microsoft.com/fwlink/?LinkId=301879
-->
<configuration>
<appSettings>
<add key="webpages:Version" value="3.0.0.0"/>
<add key="webpages:Enabled" value="false"/>
<add key="ClientValidationEnabled" value="true"/>
<add key="UnobtrusiveJavaScriptEnabled" value="true"/>
</appSettings>
<system.web>
<compilation debug="true" targetFramework="4.6.1"/>
<httpRuntime targetFramework="4.6.1"/>
<authentication mode="Windows"/>
<authorization>
<deny users="?"/>
</authorization>
</system.web>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Antlr3.Runtime" publicKeyToken="eb42632606e9261f"/>
<bindingRedirect oldVersion="0.0.0.0-3.5.0.2" newVersion="3.5.0.2"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Optimization" publicKeyToken="31bf3856ad364e35"/>
<bindingRedirect oldVersion="0.0.0.0-1.1.0.0" newVersion="1.1.0.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35"/>
<bindingRedirect oldVersion="0.0.0.0-1.6.5135.21930" newVersion="1.6.5135.21930"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed"/>
<bindingRedirect oldVersion="0.0.0.0-11.0.0.0" newVersion="11.0.0.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35"/>
<bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35"/>
<bindingRedirect oldVersion="0.0.0.0-5.2.7.0" newVersion="5.2.7.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35"/>
<bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
<system.codedom>
<compilers>
<compiler language="c#;cs;csharp" extension=".cs"
type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
warningLevel="4" compilerOptions="/langversion:default /nowarn:1659;1699;1701"/>
<compiler language="vb;vbs;visualbasic;vbscript" extension=".vb"
type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
warningLevel="4" compilerOptions="/langversion:default /nowarn:41008 /define:_MYTYPE=\"Web\" /optionInfer+"/>
</compilers>
</system.codedom>
</configuration>
Using Visual Studio Enterprise 16.0.0.
Created MVC Project 4.6.1
Run Telerik utility to "Convert to Telerik Web Application" from Project context menu. On a clean project just created from the VS Template.
Since previous step errors out and doesn't complete an attempt was made to use the Telerik Upgrade Wizard.
This produced the following error:
An error occurred while running the wizard.
Error executing custom action Telerik.VSX.Actions.ShowConversionLogAction: Could not instantiate a TextTransformation object from the compiled assembly. The following Exception was thrown:
System.InvalidCastException: Unable to cast object of type 'Microsoft.VisualStudio.TextTemplating3e7341780e3e4a17bdabe17b447cd796.GeneratedTextTransformation' to type 'Microsoft.VisualStudio.TextTemplating.TextTransformation'.
at Microsoft.VisualStudio.TextTemplating.TransformationRunner.CreateTextTransformation(String fullClassName, ITextTemplatingEngineHost host, Assembly assembly, ITextTemplatingSession userSession)