You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Blazorise DataGrid数值编辑字段小数位数与数据类型不匹配

解决Blazorise DataGrid整数列Inline编辑时显示两位小数的问题

核心原因

DisplayFormat仅控制单元格非编辑状态的显示格式,而Inline编辑模式下,DataGridNumericColumn会渲染NumericEdit组件,该组件默认可能采用带小数的格式,即便绑定的是整数类型字段。

解决方案

方案1:设置EditFormat属性

直接为DataGridNumericColumn添加EditFormat="0",指定编辑模式下的格式:

<DataGrid Data="@myData" EditMode="DataGridEditMode.Inline">
    <DataGridNumericColumn 
        Field="@nameof(MyModel.IntField)" 
        DisplayFormat="0" 
        EditFormat="0" />
</DataGrid>

方案2:自定义EditTemplate强制指定格式

如果方案1不生效,通过EditTemplate手动渲染NumericEdit并明确设置Format="0",绕过默认的格式继承:

<DataGrid Data="@myData" EditMode="DataGridEditMode.Inline">
    <DataGridNumericColumn Field="@nameof(MyModel.IntField)" DisplayFormat="0">
        <EditTemplate>
            <NumericEdit TValue="int" 
                         @bind-Value="@((context as CellEditContext).CellValue)" 
                         Format="0" />
        </EditTemplate>
    </DataGridNumericColumn>
</DataGrid>

额外检查

确保绑定的字段确实是整数类型(如int、long),而非decimal或double,避免类型本身导致的小数显示。

内容的提问来源于stack exchange,提问作者Soundar Rajan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 16:53:12