WinformBlazor项目,采用BootstrapBlazorUI组件库,关于表格组件<Table>的实现方法

WinformBlazor项目,采用BootstrapBlazorUI组件库,关于表格组件<Table>的实现方法

作者视频教程:https://www.bilibili.com/video/BV1ap4y1x7Qn?spm_id_from=333.788.videopod.episodes&vd_source=74966c5fb87bf4d74d890b7f9f1cec2f&p=12

BootstrapBlazorUI文档:https://www.blazor.zone

1、类的定义,项目、包等

微信图片_20260202112656

2、注入服务;注意顺序

微信图片_20260202135024

3、页面代码

<Table TItem="AlarmCodeParam" IsPagination="true" PageItemsSource="PageItemsSource"
       IsStriped="true" IsBordered="true" ShowSkeleton="true" IsMultipleSelect="true"
       ShowToolbar="true" ShowSearch="true" ShowExtendButtons="true"
       AutoGenerateColumns="true" EditMode="EditMode.Popup" >
    <TableColumns>
        <TableColumn @bind-Field="@context.AlarmName" Sortable="true" Filterable="true" />
    </TableColumns>
</Table>

4、无需其他代码即可实现增删改查及复杂的查询、搜索、过滤等功能,也可自定义增删改查方法

5、枚举enum字段的实现方法:原代码中有个小bug

微信图片_20260204142035

修改的代码如下:

                //var left = (binaryExp.Left as MemberExpression)!;//此行代码未处理    enum的情况,改为如下代码
                //开始 处理enum的情况
                MemberExpression? left = null;
                if (binaryExp.Left is UnaryExpression methodLeft)
                {
                    // 枚举转字符串
                    left = methodLeft.Operand as MemberExpression;
                }
                else if (binaryExp.Left is MemberExpression m)
                {
                    left = m;
                }
                //结束 处理enum的情况

 

posted @ 2026-02-02 14:00  中国结  阅读(24)  评论(0)    收藏  举报