Hi all,
I've been observing a strange behavior and cannot seem to find out what causes it. This is primarily to collect some general ideas and learn about principles that I may have missed. I hate to say it but the fact I'm posting it here already suggests that Telerik Blazor UI might be involved, even if it is only by me using it wrong. Before I switched (from Bootstrap UI) to Telerik's Blazor UI, the solution operated more swiftly but was optically inconsistent if not outright ugly. Using Telerik Blazor UI introduced the desired consistency and working with the components is mostly a breeze. I don't regret my choice at all, and will do whatever is needed to keep it part of the solution.
For more context: this is about a multi-layered Blazor app (ASP.NET Core 8) using Telerik's Blazor UI to give users CRUD operations on medical case data. It is supposed to show data from an Oracle relational database with Entity Framework (EF Core 8). It's a data-first approach so I have built entity classes representing each table (about 30 tables in total now) and configured their relations mostly manually. But that's not actually the point. It's just to describe why I can't just paste a small code snippet here. It's a medical application so I'm legally unable to paste code 1:1 from my solution, and it's tons of code by now. Hope the description I'm giving below is enough to put you in the frame.
There are multiple Razor pages and components, some with more and some with less complexity:
The editor page (the heaviest piece of the solution) features:
All pages use InteractiveServer render mode as that is what I found works best for me. Until now, the software is only running on my dev machine in Visual Studio 2022, and most of the time in debug mode.
IMPORTANT: Let me emphasize that what I am describing here appears exclusively in debug mode as long as VS2022 is attached, and not when the solution is run by dotnet run. It's a p.i.t.a. though to debug with the handbrake engaged, and I'm not sure if the process does not hide a problem even when it runs without a debugger attached. It's just much faster then but that's not proof that whatever issue it is only affects the debug scenario.
The problems begin when I start navigating between the pages. Sometimes it's really fast, sometimes the same thing takes a lot of time. In my perception it might be related to how quickly I navigate but the actual trigger for the behavior is mostly unclear at this time. Heavier pages cause longer delays (and more exceptions along the way), while being loaded as well as while navigating away from them. But it's not consistent enough to point to an overall page or DOM size-related issue.
What struck me is that the debug console gets flooded with errors like these as delays are happening:
Exception thrown: 'Microsoft.JSInterop.JSDisconnectedException' in Microsoft.JSInterop.dll
Exception thrown: 'Microsoft.JSInterop.JSDisconnectedException' in System.Private.CoreLib.dll
Exception thrown: 'Microsoft.JSInterop.JSDisconnectedException' in System.Private.CoreLib.dll
Exception thrown: 'Microsoft.JSInterop.JSDisconnectedException' in Microsoft.AspNetCore.Components.Server.dll
The one from System.Private.CoreLib.dll appears twice most of the time, sometimes only once. A block like this is shown repeatedly up to 90 times in quick succession, in worse cases, sometimes only ten of these blocks appear in the console. But it's always this combination of the same three DLLs being addressed. When this happens, no other exceptions mix in, it's a constant stream of these three / four exceptions. The application is massively slowed down as this happens. Not as much as showing me a waiting indicator and reconnecting in the page though.
What's also interesting is that the user-end of the solution, besides being very slow at times, behaves fully normally. There are no errors or exceptions apparent to the user. To me this looks like the exceptions are silently consumed somewhere without giving further detail. Each occurrence takes some processing time. I can't say where the exceptions are thrown - probably somewhere deep inside the JS layers - but it's really unsettling and I have some doubts about moving this to production unless this is clarified a bit better.
The Edge browser's developer tools show nothing unusual. The JavaScript console there stays error-free, and running a network recording during a page refresh does show that loading takes very long (about 5 out of 10 seconds are spent with no traffic at all), but all HTTP operations have status 101 (switching protocols) or 200 (success). No error indication at all there.
I beg your pardon for being too unspecific where it may count but this is honestly my first Blazor application at all, and it's a monster of a project right away. I'm overwhelmed by the time pressure already and there's no team mates to help out. Random delays are the last thing I need.
So to wrap this up, what I'm looking for is basically guidance like:
Thank you all for reading, and in advance for any clues.
Cheers, have a nice day!
Joe

Hi,
Is there a way to open a date picker component targeting the month of a future minimum date ?
For example, I have a minimum date in 3 months. When I open the date picker, the popup is focus on today. When I change the month or click on 'Today', the focus goes on the month of this future date as expected.
I would like to have this behavior when opening the popup.
I tried to use the NavigateTo() with the OnOpen() event but no luck.
REPL example : https://blazorrepl.telerik.com/cJYCGmlk51WrceTj48
Thanks in advance
Hello,
I noticed that when TelerikDatePicker and TelerikTimePicker components are used with nullable DateOnly and nullable TimeOnly values, respectively, and ShowClearButton is set to true, the "X" button still appears in an empty field when the value is null. This shouldn’t happen, as there is no value to clear. When you click on the field to type a date or time, the "X" button disappears.
Here is the reproduction of the issue:
https://blazorrepl.telerik.com/GfaCbmlz03hT2mky54
It doesn’t seem like this is intended behavior. If it’s not, is there a workaround to prevent the "X" from appearing when there is no value?
Thanks,
Ivaylo

Hello:
As the subject line states, is there a way to open the DatePicker programmatically?
Hy,
is there a way to customize the template visualization of each day in the DatePicker component?
I need to change the style and colors of the days according to different conditions. For examples:
Thanks in advance
<div class="gsi-background-color-light" style="height: 41px; display:flex;justify-content:space-between;">
<div class="align-self-center gsi-font-kendo gsi-margin-0">
Patient Filters
</div>
<TelerikButton Id="filterChevronButton"
FillMode="Clear"
Class="gsi-border-width-0 gsi-border-color-white gsi-padding-8"
Icon="@( FilterVisible? Telerik.SvgIcons.SvgIcon.Filter : Telerik.SvgIcons.SvgIcon.Filter)"
OnClick="@(() => ExpandCollapse())" />
</div>
<TelerikAnimationContainer @ref="@AnimContainer"
Class="gsi-background-color-light gsi-margin-5 k-rounded-0"
Width="100%"
Height="100vm">
<TelerikStackLayout Spacing="1px" Class="gsi-margin-5">
<TelerikCard Width="25vh">
<CardBody>
<div class="form-group-short">
<label class="col-form-label" for="firstName">First Name</label><br />
<TelerikTextBox @bind-Value="@FirstNameFilter"
Name="firstName"
Placeholder="-No Filter-"
OnChange="@(x => OnFilterChanged(nameof(FirstNameFilter), x))">
</TelerikTextBox>
</div> private async Task OnFilterChanged(string propertyName, object newValue)
{
await GetPatients();
ExpandCollapse(false);
} private async Task OnFilterChanged(string propertyName, object newValue)
{
object existingValue = this.GetPropertyValue(propertyName);
if (newValue != existingValue)
{
this.SetPropertyValue(propertyName, newValue);
await GetPatients();
ExpandCollapse(false);
}
} public async void ExpandCollapse(bool? filterVisible = null)
{
if (filterVisible.HasValue)
{
await AnimContainer.ToggleAsync();
FilterVisible = filterVisible.Value;
}
else
{
await AnimContainer.ToggleAsync();
FilterVisible = !FilterVisible;
}
}We have a Blazor DatePicker in our web app to store the Date of Birth. The calendar popup seems to be working correctly. However, for the input portion, when typing in the year of the date, the content typed into the year overflows the input area for as long as the user types, instead of horizontally scrolling within the 4-digit year space.
The interesting thing is that this is only happening to one of our client users. We have been unable to duplicate this either locally or in our Dev/Test environments. I'm assuming that, since the horizontal scrolling of the year entry is within the DatePicker widget, could this possibly be due to an environment issue with the Blazor library or maybe some setting within Microsoft Edge?
I don't have as many details as I would like to have to share with you. At this time, I'm just trying to find out if you have ever heard of this issue before?

Hi i have a DatePicker in a module form. If i resize the browser window in order to have low visible space below the datepicker, then i open the datepicker popup, it create a strange effect on the page.
For example i have this page with a datepicker (highligted in red):

if i open the datepicker popup the dom change adding white space on bottom of the page:

closing the popup, the white space disappear.
How to solve?
Thanks
