Our immediate need is for the MaskedTextBox.
And have modified my program.cs to add:
// Add services to the container.
builder.Services.AddControllersWithViews()
// Maintain property names during serialization. See:
// https://github.com/aspnet/Announcements/issues/194
.AddNewtonsoftJson(options => options.SerializerSettings.ContractResolver = new Newtonsoft.Json.Serialization.DefaultContractResolver());
// Add Kendo UI services to the services container"
builder.Services.AddKendo();
I copied the code from your demo into the ASP.net 6.0 Page above.
I added data properties to the Index.cshtml.cs model and changed the Value property on each Kendo object to point them. That works fine
The issue is that the formatting is not applied:
I know you can query the client side JavaScript version using
kendo.version
It would be handy if you could query the dll assembly version or cdn url so the URLs can automatically match the dll used in the solution especially when nuget is used to update it currently I work around this using:
@{ var version = typeof(Kendo.Mvc.KendoServices).Assembly.GetName().Version;
string kendoCDN = $"//kendo.cdn.telerik.com/{version.Major}.{version.Minor}.{version.Build}";}
<link href="@Url.Content(kendoCDN + "/styles/kendo.bootstrap-v4.min.css")" rel="stylesheet" type="text/css" />
When using th-TH culture and setting a valid name for a component an exception InvalidOperationException: Name cannot contain spaces.
is thrown.
An InvalidOperationException: Name cannot contain spaces.
is thrown.
Exception should not be thrown and components should be rendered as expected.
Hi,
Will the TagCloud control from the ASP.NET AJAX package ever be ported to the ASP.NET Core package?
I use this on faculty profiles and it is a required component if I ever want to move them to Core.
Thanks,
Charlotte McClellan
There is a new CheckBoxTagHelper to support the new rendering, but the public ModelExpression For { get; set; } property is missing.
Steps to reproduce
Current Behavior
The value in the Html Input is restored but not the value of the Kendo Input. The same behavior applies for Kendo NumericTextBox, etc.
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://kendo.cdn.telerik.com/2021.3.1207/styles/kendo.bootstrap-v4.min.css" />
<script src="https://kendo.cdn.telerik.com/2021.3.1207/js/jquery.min.js"></script>
<script src="https://kendo.cdn.telerik.com/2021.3.1207/js/kendo.all.min.js"></script>
<script src="https://kendo.cdn.telerik.com/2021.3.1207/js/kendo.aspnetmvc.min.js"></script>
</head>
<body>
<form>
<div>
<label for="HtmlInput">Html Input</label>
<input type="text" id="HtmlInput" name="HtmlInput">
</div>
<div>
<label for="KendoInput">Kendo Input</label>
@(Html.Kendo().TextBox ().Name ("KendoInput"))
</div>
</form>
</body>
</html>
If you use "Edit in REPL" button in any demo that uses `kendoConsole.log()`, it will throw an error that the kendoConsole doesn't exist (you can use the Upload > Events demo as a quick example).
This is happening because the kendoConsole is only a part of demos.telerik.com pages that does not get copied over to the REPL or Dojo because it is irrelevant to the demo itself. The fix is to change all kendoConsole.log() instances to console.log()
That said, I am opening this bug report so that the dev team can consider ways to handle the "edit in" scenarios.
Thank you,
Arthur
### Bug report
The localization script "kendo.messages.en-GB.min.js" throws a type error in the browser console - "Cannot read properties of undefined (reading 'messages')".
### Reproduction of the problem
1. Include the culture script "kendo.culture.en-GB.min.js" on the page (locally or by using the Kendo CDN service).
2. Include the localization script "kendo.messages.en-GB.min.js" (locally or by using the Kendo CDN service).
3. Set the culture to "en-GB".
4. An error is logged in the browser console: "Cannot read properties of undefined (reading 'messages')".
A Dojo sample for reproduction: https://dojo.telerik.com/aJokESEP
### Environment
* **Kendo UI version: 2021.3.1109
* **jQuery version: 1.12.4
* **Browser:** [all]
### Bug report
The Button TagHelper is missing in the Visual Studio 2022 IntelliSense.
### Reproduction of the problem
Create a Telerik UI for ASP.NET Core application (.NET 6) and try to insert a Button TagHelper by using the IntelliSense. It appears that not all available Telerik UI components are available in the suggested list.
### Environment
* **Visual Studio Professional 2022 version: 17.1.0 Preview 1.1
* **Kendo UI version: 2021.3.1109
* **jQuery version: 1.12.4
* **Browser: [all]
I have an editable kendo grid in which I have a date field. When I choose a date through the calendar for example: 26.12.2021 on post the model binder parses the date correctly.
If I manually enter the date in the cell the model binder parses the date as it was not an UTC and since my time zone is +2h it comes in the controller as 25.12.2021 22:00
(see the attached files)
Inside my startup.cs I have defined JsonOptions like this:
.AddNewtonsoftJson(options =>
{
options.SerializerSettings.ContractResolver = new DefaultContractResolver();
options.SerializerSettings.DateTimeZoneHandling = DateTimeZoneHandling.Utc;
});
In the Configure method:
var supportedCultures = new[] { new CultureInfo("bg-BG") };
app.UseRequestLocalization(new RequestLocalizationOptions
{
DefaultRequestCulture = new RequestCulture("bg-BG"),
SupportedCultures = supportedCultures,
SupportedUICultures = supportedCultures
});
Layout.cshtml
<script src="~/lib/kendo/js/cultures/kendo.culture.bg-BG.min.js"></script>
<script>
kendo.culture("bg-BG");
</script>
The DatePicker's popup has a CSS min-height property set that causes it to sometimes have an empty blank space at the bottom.
Review another occurence.
There should be a blank space in the DatePicker's popup.
Kendo dialog structure doesn’t use Aria landmarks properly for buttons - this leads to a validation error
The pager control's select box renders role="listitem" but the parent is missing role="list" - this leads to a validation error
Listviews will render role="list" even when empty - this leads to a validation error
Kendo grids use 2 tables (one for header and one for the data) which means that there are no role="cell" assigned to any of the headers - this leads to a validation error
Scrollable grids are missing a tabindex="0" to allow for keyboard navigation - this leads to a validation error
this form doesn't have Core 2, 2.1, 3.0, 3.1 or 5 in the .Net Framework drop down. Just gonna pick 4.8 even though it doesn't apply. I am using core 5.
Hi Telerik Team
Wil younot implement the LightBox also as a a asp.net core component ?
We think it will be usefull. of course we could also implement in window component but its not the same
Telerik Web UI LightBox Overview Demo | Telerik UI for ASP.NET AJAX
Best regards
Murat Zürich
A DataSource defined using TagHelpers with disabled serverPaging sets default pageSize:
<datasource type="DataSourceTagHelperType.Ajax" server-filtering="true" server-paging="false">
<transport>
<read url="@Url.Page("Index", "Read")" data="forgeryToken" />
</transport>
<schema data="Data">
<model id="OrderID">
<fields>
<field name="ShipName" type="string"></field>
</fields>
</model>
</schema>
</datasource>
generates the following initialization script:
{"dataSource":{"page":1,"pageSize":20,"schema":{"model":{"id":"OrderID","fields":{"ShipName":{"type":"string"}}},"data":"Data","errors":"Errors","total":"Total"},"serverAggregates":true,"serverFiltering":true,"serverGrouping":true,"serverPaging":true,"serverSorting":true,"transport":{"read":{"url":"/?handler=Read","data":forgeryToken}},"type":(function(){if(kendo.data.transports['aspnetmvc-ajax']){return 'aspnetmvc-ajax';} else{throw new Error('The kendo.aspnetmvc.min.js script is not included.');}})()}
with default pageSIze set.
Initializing using jQuery works as expected:
dataSource: {
type: "aspnetmvc-ajax",
serverPaging: false,
serverFiltering:true,
transport: {
read: {
url: "@Url.Page("Index", "Read")",
data: forgeryToken
}
},
schema: {
model: {
id:"OrderID"
},
data: "Data",
total:"Total"
}
}
The "page" and "pageSize" values are set, which results in only 20 items being displayed, even though more are returned by the "read" action.
The "page" and "pageSize" should not be set.
Issue
Using any overload of ToDataSourceResult(Async) with a DataSourceRequest containing filter descriptors on an IQueryable provided by Entity Framework core 2.x, causes Entity Framework's "Query cache" to fill up for different filter values, leaking memory in the process. This is caused by using Expression.Constant in the generated expression trees for a DataSourceRequest's FilterDescriptors. Refer to https://github.com/dotnet/efcore/issues/14859 for more details about why this leaks memory.
Since Entity Framework's cache is always missed for new filter values, performance is also degraded due to this issue.
The issue is not present when using Entity Framework core 3 or greater. Apparently using Expression.Constant is not an issue on these version.
I have attached a minimal working example that illustrates the memory leak.
Fix
This issue can be fixed by changing FilterDescriptorExpressionBuilder.CreateValueExpression to not return a ConstantExpression, but a MemberExpression instead. Entity Framework 2.x will correctly parameterize the MemberExpression, causing the query cache to be hit correctly for queries that only differ in parameter values. It won't parameterize ConstantExpressions. Refer to https://stackoverflow.com/a/60516780/147993 for an example of generating a MemberExpression instead of a ConstantExpression.
especially for Grid, Tabstrip, Charts...
so autosize is standard without javascript
This common issue immediately manifests itself through the Html helper output of shape Html.Kendo().__For(model => model.__). The output html contains a script following the created element, which contains:
kendo.syncReady(function(){jQuery("#NewPersonId").kendoTextBox({});});
This can possibly be mitigated by replacing the query part with:
jQuery(document.currentScript.previousSibling)
browser support for previousSibling
This suggestion assumes that the script element is always the next sibling of the element being "syncReady"-ed.
This will not solve the issue of users facing the issue in the own code if they try to query the element by ID themselves, but it may save them the trouble of specifying an id in cases where they only need to do so to prevent ID contention. This is only a suggestion. Feel free to disregard it.
Hi support team,
I have a question about translation of Kendo. I'm using Kendo as NuGet package dependency
and some text resources aren't translated to Slovak. They are still in English.
For example question in delete confirm dialog of grid and "Add new record" button of grid.
And in other widgets, but these two are the most important for me.
Is there any option to get translation working from NuGet package?
I tried everything i found, but nothing works.
Thanks in advance
Vlado