TabsPage

低代码页面设计器的 Tab 布局容器:每个子区块即一个标签页,可混排表格 / 列表 / 图表等区块。

最后更新

说明

与 LeftRightPage / TopBottomPage 同为容器型区块,注册在 PageComponents 表下、键为 "tabs"(改类名不影响已发布页面 JSON)。约定每个子区块就是一个标签页:标签标题取子区块的 Title,留空则按 Local.Format 回退为「标签」;被点中的标签其内容即该子区块本身,交由 PageRenderer 依据子区块的组件键动态渲染,因而同一组标签可自由混排 TablePage、ListPage、ChartPage 等。当前激活下标由组件内部维护,点标签即切换;设计态且尚无子区块时,展示标签栏默认项与「把区块拖进来,每个子区块即一个标签页」的放置占位,设计画布可继续向容器拖放。可见文本(占位、空态、默认标签名等)均经 LocalService 本地化,样式集中在框架 web.css 的 .pg-tabs 段。

常见能力:

  • 每个子区块即一个标签页,标题取子区块 Title、留空回退 标签
  • 当前内容由 PageRenderer 按子区块组件键动态渲染,表格 / 列表 / 图表可混排
  • 点标签即切换,激活下标内部维护
  • 容器组件:设计器可继续向标签内拖放区块
  • 经 PageComponents 注册表按键 tabs 引用,与已发布页面 JSON 解耦
  • 设计态空布局给出放置占位提示

用法

@* 运行时通常经 PageRenderer 渲染;这里直接给一个带子区块的 tabs 区块 *@
@{ var tabs = new PageBlock
{
    Component = "tabs",
    Title = "客户视图",
    Children =
    {
        new PageBlock { Component = "table", Title = "订单",
            Settings = { ["columns"] = "订单编号,客户,金额", ["rows"] = "3" } },
        new PageBlock { Component = "chart", Title = "销售额",
            Settings = { ["type"] = "bar", ["series"] = "42,68,55,80", ["labels"] = "一月,二月,三月,四月" } },
    },
}; }

<TabsPage Block="tabs" Design="false" />

API 参数

参数 类型 默认值 说明
Block PageBlock PageBlock 区块数据:子区块即标签页(标题取子区块 Title,内容为子区块本身)。
Design bool false 是否设计态。

所有组件均继承 BaseComponent,除上表参数外还支持 Class、Style、Disabled、Visible。

微信公众号二维码 扫码关注公众号
QQ 交流群二维码 扫码加入 QQ 群