The following exception occurs:
Microsoft.JSInterop.JSDisconnectedException: JavaScript interop calls cannot be issued at this time. This is because the circuit has disconnected and is being disposed.
............
at Telerik.Blazor.Components.Common.Loader.ComponentLoaderContainer.DisposeAsync()
When the user closes the browser and the web page contains any of the below components:
We'd like to track the community demand for using the Telerik Blazor components as Custom Elements.
Please share example common scenarios for such usage and list the components you want to register as Custom Elements to use in other SPA frameworks such as Angular or React.
URL: https://blazorrepl.telerik.com/QJkQPwlw09eSCmk905?_gl=1%2a1wzzh94%2a_gcl_au%2aODg2NjQ4ODc0LjE3NDMwNjY1NTI.%2a_ga%2aODYwMDgyNjY4LjE3MzI3OTMyMTA.%2a_ga_9JSNBCSF54%2aczE3NDc2MzAyNjkkbzUkZzEkdDE3NDc2MzYwMjYkajE4JGwwJGgwJGRHVjE1OElLdHB0ZXJwc1VOWHNzTWlJTEhVVlVQckU0Ynd3
Screen Readers: NVDA (2024.4.2.35031), JAWS (2025.2504.89), Narrator
Screen reader is announcing as 'Select files button collapsed'.
Refer Attachment:
1. Screen reader is not announcing label and note information for 'Select files' button.png
2. Screen reader is not announcing label and note information for 'Select files' button.mp4
I noticed that when the ReadTimeout property of the FileSelect's FileInfoStream is read, the code seem to block completely.
You will find a Blazor Web App project attached to this ticket showcasing the issue.
When enabling/disabling a form element that is defined in a child component, the element is successfully disabled, however a console error occurs. The error occurs whether the child component makes the update or the parent makes the update through a passed parameter. The error does not occur for form elements defined in the parent. The error does not occur for basic html input elements defined in the child.
Element definition:
<TelerikTextBox
Id="ElementMisc"
AutoComplete="new-password"
@bind-Value="@_searchModel.ElementMisc"
Enabled="!_elementSelectMode"
class="textbox-75"
DebounceDelay="0">
</TelerikTextBox>
Update Code defined in child:
if (results.Data.Count > 1)
{
_elementSelectMode= true;
StateHasChanged();
}
Console Error:
Uncaught (in promise) Error: Assertion failed - heap is currently locked
at mr (blazor.web.js:1:158963)
at Object.beginInvokeDotNetFromJS (blazor.web.js:1:157244)
at w.invokeDotNetMethodAsync (blazor.web.js:1:3978)
at C.invokeMethodAsync (blazor.web.js:1:5486)
at r.invokeMethodAsync (telerik-blazor.js:22:1272553)
at r.onBlur (telerik-blazor.js:22:1463592)
at ye.setOrRemoveAttributeOrProperty (blazor.web.js:1:28630)
at ye.applyAttribute (blazor.web.js:1:27574)
at ye.applyEdits (blazor.web.js:1:24601)
at ye.updateComponent (blazor.web.js:1:23606)
If user input should control which pointers that are visible as in this example:
@page "/gauge"
<div>
<TelerikCheckBox Id="display_second" @bind-Value=_displaySecond></TelerikCheckBox>
<label for="display_second">Display second pointer</label>
</div>
<TelerikRadialGauge>
<RadialGaugePointers>
<RadialGaugePointer Value="55" />
@if (_displaySecond)
{
<RadialGaugePointer Value="75" Color="red" />
}
</RadialGaugePointers>
</TelerikRadialGauge>
@code {
bool _displaySecond;
}
The size of the RadialGauge is not set correctly if changing properties from user input.
@page "/gauge"
<div>
<TelerikCheckBox Id="large" @bind-Value=_large ></TelerikCheckBox>
<label for="large">Large</label>
</div>
<TelerikRadialGauge Width=@(_large ? "500px" : "200px") Height=@(_large ? "500px" : "200px")>
<RadialGaugePointers>
<RadialGaugePointer Value="55" />
</RadialGaugePointers>
</TelerikRadialGauge>
@code {
bool _large;
}Nothing happens with the gauge in the example above, I would expect it to be larger when ticking the checkbox.
If using F12 in the browser I can see that the outer element get the correct size, but not the inner svg...
I would like a Blazor PropertyGrid with
-- that could be bound to an instance of a custom Type that implemented INotifyPropertyChanged
-- with expandable/collapsible sections with the ability to prevent a user from expanding a collapsed section (e.g. the user lacks privileges to see that section's data)
-- would keep track of its UI state including collapsed sections (similar to the excellent implementation in Telerik's Blazor Grid)
-- that would allow the use of all Telerik Blazor editors as cell-value editors
I am interested in using this component primarily as a data-entry UX in a data-entry-intensive line-of-business application. Such a grid offers standard navigation on all data-entry screens in the application, eliminating tab-order, thereby greatly simplifying the end-user experience. The expanding/collapsing sections make it very economical in its use of screen real-estate. I have used such a component (from a competitor of Telerik) in a WinForms application with excellent results.
For example in DropDownList reflection is used for binding for TextField and ValueField.
As an additional option, I'd instead to be able to do DropDownList<FooBarModel> and then FooBarModel implements a Telerik interface IDropDownListItem (for example but use your naming conventions)
I agree you shouldn't remove the option of using TextField / ValueField but I'd like to see it as an option.
Doing the same thing in something like DataGrid I agree would be a ton more work and we'd likely require using source generation.
It seems that Microsoft / the industry is consistently recommending to phase out the use of reflection and have invested a bunch in making source generation much less of a pain and developer friendly.
We have a Blazor project that normally takes 20 seconds to build.
But after upgrading Telerik.Licensing from 1.8.2 to 1.9.0/1 the build takes about 60 seconds.
First we upgraded all telerik references with this effect. Now we downgraded all to the version that is supported by 1.8.2.
In the project, the only change I make is to change the version from 1.8.2 to 1.9.0 or later, then the build goes from 20 seconds to 60 seconds, no other changes made...
I have tried Rebuild, Restarts etc...
In the build detailed output, it is the csc command that takes longer times.
The documented lazy loading scenario is not compatible with Telerik UI for Blazor 15.0.0, because of the new ITelerikIconService. Unlike the ITelerikStringLocalizer, there is no alternative way to register this icon service outside Program.cs.
Please implement
with inheritance from a well-defined C# interface because the current Blazor implementation for DataSourceRequest and DataSourceResult do not do so. However, if they inherit from interfaces, then that makes more clear and explicit what contract must be used to maintain interoperability with the Telerik controls for Blazor while also enabling alternate customized concrete implementations that developers (such as myself) can extend while also adhering to the required Telerik contract specified in the interface.
Furthermore, with specification by interface, then our customized variants can also be instantiated by dependency injection wherever we want in our code libraries. Keep in mind that C# interfaces support multiple inheritance while C# classes do not. So please provide interfaces for the most critical and important classes, especially DataSourceRequest and DataSourceResult in your Telerik.DataSource library.