The TelerikNumericTextBox does not always render its value reliably after a page refresh or redirect. In certain scenarios with asynchronous data loading, the component may appear empty or fail to display the expected value, even though the data is present in the model.
Also, sharing a possible hotifix:
<fieldset disabled="@(CurrEdit.CanEdit != true)" @key="@RenderCycle">
<table id="rdt">
<caption class="form__header">header</caption>
<thead>....</thead>
<tbody>
<tr>
<td>1</td>
<td><TelerikNumericTextBox Id="era0_0" @bind-Value="@era[0].C0" Decimals="2" SelectOnFocus="true" Class="bg-yellow" Arrows="false" AutoComplete="off" /></td>
<td><TelerikNumericTextBox Id="era0_1" @bind-Value="@era[0].C1" Decimals="1" SelectOnFocus="true" Class="bg-yellow" Arrows="false" AutoComplete="off" /></td>
<td><TelerikNumericTextBox Id="era0_2" @bind-Value="@era[0].C2" Decimals="1" SelectOnFocus="true" Class="bg-yellow" Arrows="false" AutoComplete="off" /></td>
<td class="clblue">@era[0].C3?.ToString("N0")</td>
<td><TelerikNumericTextBox Id="era0_4" @bind-Value="@era[0].C4" Decimals="1" SelectOnFocus="true" Class="bg-yellow" Arrows="false" AutoComplete="off" /></td>
<td><TelerikNumericTextBox Id="era0_5" @bind-Value="@era[0].C5" Decimals="1" SelectOnFocus="true" Class="bg-yellow" Arrows="false" AutoComplete="off" /></td>
<td class="clblue">@era[0].C6?.ToString("N0")</td>
<td><TelerikNumericTextBox Id="era0_7" @bind-Value="@era[0].C7" Decimals="1" SelectOnFocus="true" Class="bg-yellow" Arrows="false" AutoComplete="off" /></td>
<td><TelerikNumericTextBox Id="era0_8" @bind-Value="@era[0].C8" Decimals="1" SelectOnFocus="true" Class="bg-yellow" Arrows="false" AutoComplete="off" /></td>
<td class="clblue">@era[0].C9?.ToString("N0")</td>
<td class="clblue">@era[0].C10?.ToString("N0")</td>
<td><TelerikNumericTextBox Id="era0_11" @bind-Value="@era[0].C11" Decimals="0" SelectOnFocus="true" Class="bg-yellow" Arrows="false" AutoComplete="off" /></td>
</tr>
....
</tbody>
</table>
</fieldset>
@code
{
protected int RenderCycle { get; set; } = 0;
protected override async Task OnInitializedAsync()
{
await LoadData(-1);
}
async Task LoadData(int typ)
{
if (IsBusy == true) return;
try
{
era=await LoadDataFromAnywhere();
erb=await LoadDataFromAnywhere();
erc=await LoadDataFromAnywhere();
...
} finally
{
IsBusy = false;
IsFirstLoad = false;
RenderCycle += 1;
}
}
}