首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >您如何在Blazor服务器端ValidationMessages中更改EditForms的样式?

您如何在Blazor服务器端ValidationMessages中更改EditForms的样式?
EN

Stack Overflow用户
提问于 2022-07-14 15:25:45
回答 2查看 122关注 0票数 0

我有EditForm,如下所示:

代码语言:javascript
复制
<EditForm class="container-fluid" Context="formContext" Model="@_inputModel" OnValidSubmit="() => OnSubmitInput()">
    <DataAnnotationsValidator />
    <!-- other stuff ordered in bootstrap cols and rows --> 
    

    <div class="col-6">
        <ValidationMessage For="() => _inputModel.NumberOfInputChannels"/>
        <label for="stNumberOfChannels" class="form-label">Number of Channels</label>
        <input type="number" class="form-control" id="stNumberOfChannels" 
            @bind="_inputModel.NumberOfInputChannels">
    </div>

</EditForm>

与表单对应的模型的属性如下所示:

代码语言:javascript
复制
[Range(1, 4, ErrorMessage = "Number of Channels must be between 1 and 4!")]
[JsonPropertyName("n-channels")]
public ushort NumberOfInputChannels { get; set; } = 3;

我的问题很简单,这条信息看上去太大了,所以我想让它变小:

我已经尝试过将class="fs-6"添加到<ValidationMessage />标记中,但它似乎没有任何效果。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-07-14 22:41:43

以下任一项:

  1. 修改CSS中的validation-message
  2. ValidationMessage包装在div中,并在div上设置您想要的任何CSS。
代码语言:javascript
复制
<div class="fs-6">
    <ValidationMessage For="() => myData.Name" />
</div>

作为参考,ValidationMessageBuildRenderTree如下所示:

代码语言:javascript
复制
    protected override void BuildRenderTree(RenderTreeBuilder builder)
    {
        foreach (var message in CurrentEditContext.GetValidationMessages(_fieldIdentifier))
        {
            builder.OpenElement(0, "div");
            builder.AddAttribute(1, "class", "validation-message");
            builder.AddMultipleAttributes(2, AdditionalAttributes);
            builder.AddContent(3, message);
            builder.CloseElement();
        }
    }
票数 2
EN

Stack Overflow用户

发布于 2022-07-15 01:17:57

<ValidationMessage>有一个参数AdditionalAttributes,它捕获属性。但是,它将类属性本身设置为validation-message,这可以在wwwroot/css中找到。

代码语言:javascript
复制
 <ValidationMessage For="() => _inputModel.NumberOfInputChannels"
                    style="font-size: 1rem;"/>

fs-61rem

源代码

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72982995

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档