首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Extjs 6.5.3从记录值绑定widgetcolumn的隐藏属性

Extjs 6.5.3从记录值绑定widgetcolumn的隐藏属性
EN

Stack Overflow用户
提问于 2018-07-11 21:04:12
回答 2查看 2K关注 0票数 0

我想要显示/隐藏具有我的记录属性的网格的widgetcolumn。

我试图通过绑定我的值来做到这一点:

{
    xtype: 'grid',
    bind: {
        store: 'ActionList'
    },
    border: true,
    flex: 2,
    name: 'actionList',
    title: this.titleActionGrid,
    columns: [{
        xtype: 'widgetcolumn',
        height: 50,
        width: 65,
        widget: {
            xtype: 'button',
            text: '{sActionTitle}',
            scale: 'large',
            height: 45,
            width: 45,
            margin: 5
        },
        bind: {
            hidden: '{bIsHidden}'
        }
    }]
}

这不起作用,所以我在互联网上搜索,我找到了这个小提琴:https://fiddle.sencha.com/#view/editor&fiddle/22rl

所以我用这部分代码尝试了一下:

cell: {
    tools: {
        up: {
            bind: {
                hidden: '{record.bIsHidden}'
            }
        }
    }
}

但这并不起作用,事实上,小提琴是在现代上的,而我的代码是在经典上。

我没有发现其他任何东西,这就是为什么我在这里,内爆任何帮助我的人;)

提前谢谢你。

ExtJS经典版6.5.3

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-07-12 03:30:25

你可以像这样绑定它:

Ext.create('Ext.grid.Panel', {
     renderTo: Ext.getBody(),
     store: store,
     border: true,
     flex: 2,
     name: 'actionList',
     title: this.titleActionGrid,
     columns: [{
             dataIndex: 'id',
         },
         {
             xtype: 'widgetcolumn',
             height: 50,
             width: 165,
             dataIndex: 'hide',
             widget: {
                 bind: {
                     text: '{record.id}',
                     hidden: '{record.hide}'
                 },
                 xtype: 'button',
                 scale: 'large',
                 height: 45,
                 width: 155,
                 margin: 5
             }
         }
     ]
 });
票数 2
EN

Stack Overflow用户

发布于 2018-07-12 08:13:25

您可以使用rowViewModel按记录绑定小部件列。Fiddle

Ext.application({
    name: 'Fiddle',

    launch: function () {
        new Ext.grid.Panel({
            renderTo: document.body,
            viewModel: {
                data: {
                    actionTitle: 'Remove'
                }
            },
            store: {
                data: [{
                    name: 'A',
                    hidden: false
                }, {
                    name: 'B',
                    hidden: true
                }]
            },
            rowViewModel: true,
            columns: [{
                dataIndex: 'name',
                text: 'Name'
            }, {
                xtype: 'widgetcolumn',
                widget: {
                    xtype: 'button',
                    bind: {
                        text: '{actionTitle}',
                        hidden: '{record.hidden}'
                    },
                    margin: 5
                },
            }]
        });
    }
});
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51286215

复制
相关文章

相似问题

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