Maciej
August 10, 2024, 12:07pm
1
Hello
After switching to NET8 in the program, retrieving values from components via @bind-Value stopped working.
After the form is finished, in the Submit function the arg values are unchanged.
dynamic dialogResult_111 =
await DialogService.OpenAsync<DialogTest>("d", new Dictionary<string, object>() { },
new DialogOptions() { Width = "500px", Height = "500", Resizable = false, Draggable = true });
If I open the form as a page, the changed values appear in arg (!).
NavManager.NavigateTo("DialogTest", false);
I have added:
<RadzenComponents @rendermode="@RenderMode.InteractiveServer " />
<RadzenDialog @rendermode="@RenderMode.InteractiveServer "/>
regards
maciej
enchev
August 11, 2024, 5:17am
2
Better add it for the entire app, as shown in our Getting started, if you want to receive events from any Blazor component, not just Radzen.Blazor components.
Maciej
August 12, 2024, 8:44pm
3
I have it in MainLayout.
What could be the cause of the @bind-Value problem in the dialog window?
Maciej
August 14, 2024, 1:01pm
4
I already know the cause of the error.
(This worked great until migrating to NET8 and updating Radzen to version 5).
RadzenButton calls Submit, but @bind-Value="dzial.Nazwa" assignment does not work.
After the dialog is finished, the value of dzial.Nazwa is unchanged.
<RadzenRow>
<RadzenColumn Size="3">
<RadzenStack Orientation="Orientation.Horizontal" JustifyContent="JustifyContent.Right" Gap="1rem" Style="margin-top: 0px; margin-bottom: 5px;">
<RadzenButton form="formDzial" ButtonType="ButtonType.Submit" Size="ButtonSize.Small" Icon="check_circle" Text="Zapisz" />
</RadzenStack>
</RadzenColumn>
</RadzenRow>
<RadzenTemplateForm id="formDzial" Data="@dzial" Submit="@((Dzial args) => { Submit(args); })">
<RadzenRow>
<RadzenColumn Size="10">
<RadzenStack AlignItems="AlignItems.Normal" Gap="1rem" Style="margin-top: 0px; width:auto">
<RadzenFieldset AllowCollapse="true" CollapseTitle="Identyfikacja" ExpandTitle="Identyfikacja"
ExpandAriaLabel="" CollapseAriaLabel="" Style="margin-top: 0px; width: 100%">
<HeaderTemplate>
<RadzenLabel><b>Identyfikacja</b> </RadzenLabel>
</HeaderTemplate>
<ChildContent>
<RadzenStack AlignItems="AlignItems.Normal" Gap="1rem" Style="margin-top: 0px;">
<RadzenRow Gap="1rem">
<RadzenColumn Size="4">
<RadzenFormField Text="Kod" Style="width: 100%;" Variant="Variant.Filled" AllowFloatingLabel="false">
<RadzenTextBox Style="width: 100%;" MaxLength="15" Name="Kod" @bind-Value="dzial.Kod" />
</RadzenFormField>
</RadzenColumn>
</RadzenRow>
<RadzenRow Gap="1rem">
<RadzenColumn Size="12">
<RadzenFormField Text="Nazwa" Style="width: 100%;" Variant="Variant.Filled" AllowFloatingLabel="false">
<RadzenTextBox Style="width: 100%;" MaxLength="120" Name="Nazwa" @bind-Value="dzial.Nazwa" />
</RadzenFormField>
</RadzenColumn>
</RadzenRow>
</RadzenStack>
</ChildContent>
<SummaryTemplate>
<RadzenText>@dzial.Kod @dzial.Nazwa</RadzenText>
</SummaryTemplate>
</RadzenFieldset>
</RadzenStack>
</RadzenColumn>
</RadzenRow>
</RadzenTemplateForm>
After moving RadzenButton to RadzenTemplateForm and removing form="formDzial", @bind-Value="dzial.Nazwa" assignment works.
<RadzenTemplateForm id="formDzial" Data="@dzial" Submit="@((Dzial args) => { Submit(args); })">
<RadzenRow>
<RadzenColumn Size="3">
<RadzenStack Orientation="Orientation.Horizontal" JustifyContent="JustifyContent.Right" Gap="1rem" Style="margin-top: 0px; margin-bottom: 5px;">
<RadzenButton ButtonType="ButtonType.Submit" Size="ButtonSize.Small" Icon="check_circle" Text="Zapisz" />
</RadzenStack>
</RadzenColumn>
</RadzenRow>
best regards
Maciej