我很久以前就需要为WinForms应用程序进行UI升级,并打算将其制作成Blazor应用程序。遗留的应用程序配置是使用WinForm的PropertGrid完成的。是否有等效的Blazor组件或最佳实践来将设置类转换为Blazor表单?
例如:
有没有一种方法可以将MySettings渲染成一个漂亮的Blazor表单,或者一个可以在不使用数千个绑定到MySettings中每个属性的Razor页面上设计表单的Blazor组件。
以下是使用验证的详细步骤:
例如:
class MySettings{
public string Name {get;set;}
public int Age {get;set;}
public string Address {get;set;}
// 1000 other settings of int, string, enums etc
}
有没有一种方法可以将MySettings渲染成一个漂亮的Blazor表单,或者一个可以在不使用数千个绑定到MySettings中每个属性的Razor页面上设计表单的Blazor组件。
以下是使用验证的详细步骤:
<EditForm Model="@_mySettingsModel" OnValidSubmit="HandleValidSubmit">
<DataAnnotationsValidator />
<ValidationSummary />
<InputText id="name" @bind-Value="_mySettingsModel.Name" />
<InputText id="age" @bind-Value="_mySettingsModel.Age" />
<InputText id="address" @bind-Value="_mySettingsModel.Address" />
<button type="submit">Submit</button>
</EditForm>
@code {
private MySettings _mySettingsModel = new MySettings();
private void HandleValidSubmit()
{
Console.WriteLine("Saving Settings...");
}
}
参考资料: https://learn.microsoft.com/zh-cn/aspnet/core/blazor/forms-validation?view=aspnetcore-3.1