Improve Form Layout

This commit is contained in:
2025-12-26 18:56:24 -05:00
parent 057aa31bf8
commit 4c05188867
8 changed files with 231 additions and 104 deletions
@@ -8,31 +8,47 @@
Title="Create"
Subtitle="Student"
ShowBackButton="true"
BackButtonUrl="/students" />
BackButtonUrl="@(ReturnUrl ?? "/students")" />
<EditForm Model="Student" OnValidSubmit="OnValidSubmit" Enhance>
<FormChangeTracker @ref="_formChangeTracker" />
<AntiforgeryToken />
<DataAnnotationsValidator />
<MudGrid>
<MudItem xs="12" sm="7">
<MudPaper Class="pa-4">
<MudTextField T="string" Label="First Name" @bind-Value="Student.FirstName" For="@(() => Student.FirstName)"></MudTextField>
<MudTextField T="string" Label="Last Name" @bind-Value="Student.LastName" For="@(() => Student.LastName)"></MudTextField>
<MudTextField T="string" Label="Email Adress" @bind-Value="Student.Email" For="@(() => Student.Email)"></MudTextField>
<MudTextField T="string" Label="Phone Number" @bind-Value="Student.PhoneNumber" For="@(() => Student.PhoneNumber)"></MudTextField>
<MudTextField T="int" Label="Grade" @bind-Value="Student.Grade" For="@(() => Student.Grade)"></MudTextField>
<MudTextField T="int" Label="TSA Year" @bind-Value="Student.TsaYear" For="@(() => Student.TsaYear)"></MudTextField>
</MudPaper>
</MudItem>
</MudGrid>
<FormActions>
<MudButton ButtonType="ButtonType.Submit" Variant="Variant.Filled" Color="Color.Primary">Create</MudButton>
<MudButton OnClick="HandleCancel" Variant="Variant.Text">Cancel</MudButton>
</FormActions>
<MudPaper Elevation="2" Class="pa-6">
<MudText Typo="Typo.h5" Class="mb-4">Student Information</MudText>
<MudGrid Spacing="3">
<MudItem xs="12" sm="6">
<MudTextField T="string" Label="First Name" @bind-Value="Student.FirstName" For="@(() => Student.FirstName)" Variant="Variant.Outlined"></MudTextField>
</MudItem>
<MudItem xs="12" sm="6">
<MudTextField T="string" Label="Last Name" @bind-Value="Student.LastName" For="@(() => Student.LastName)" Variant="Variant.Outlined"></MudTextField>
</MudItem>
<MudItem xs="12" sm="6">
<MudTextField T="string" Label="Email Address" @bind-Value="Student.Email" For="@(() => Student.Email)" Variant="Variant.Outlined"></MudTextField>
</MudItem>
<MudItem xs="12" sm="6">
<MudTextField T="string" Label="Phone Number" @bind-Value="Student.PhoneNumber" For="@(() => Student.PhoneNumber)" Variant="Variant.Outlined"></MudTextField>
</MudItem>
<MudItem xs="12" sm="6">
<MudTextField T="int" Label="Grade" @bind-Value="Student.Grade" For="@(() => Student.Grade)" Variant="Variant.Outlined"></MudTextField>
</MudItem>
<MudItem xs="12" sm="6">
<MudTextField T="int" Label="TSA Year" @bind-Value="Student.TsaYear" For="@(() => Student.TsaYear)" Variant="Variant.Outlined"></MudTextField>
</MudItem>
</MudGrid>
<FormActions>
<MudButton ButtonType="ButtonType.Submit" Variant="Variant.Filled" Color="Color.Primary">Create</MudButton>
<MudButton OnClick="HandleCancel" Variant="Variant.Text">Cancel</MudButton>
</FormActions>
</MudPaper>
</EditForm>
@code {
[SupplyParameterFromQuery]
private string? ReturnUrl { get; set; }
[SupplyParameterFromForm]
private Student Student { get; set; } = new() { TsaYear = 1 };
@@ -44,12 +60,12 @@
Context.Students.Add(Student);
Context.SaveChanges();
NavigationManager.NavigateTo("/students");
NavigationManager.NavigateTo(ReturnUrl ?? "/students");
}
private void HandleCancel()
{
_formChangeTracker?.AllowNavigation();
NavigationManager.NavigateTo("/students");
NavigationManager.NavigateTo(ReturnUrl ?? "/students");
}
}