Why does ui-control not work?

this is the programme. Problem: Even when widgets: {disable: ['aaa1']}, the button remains enabled. Can you help identify why the ui-control component does not respect the disabled binding?

[
    {
        "id": "b25a83a1347510a1",
        "type": "tab",
        "label": "流程 2",
        "disabled": false,
        "info": "",
        "env": []
    },
    {
        "id": "adb3f9612e23595d",
        "type": "ui-button",
        "z": "b25a83a1347510a1",
        "group": "1ff4c0fc452da5ae",
        "name": "aaa1",
        "label": "button",
        "order": 1,
        "width": 0,
        "height": 0,
        "emulateClick": false,
        "tooltip": "",
        "color": "",
        "bgcolor": "",
        "className": "",
        "icon": "",
        "iconPosition": "left",
        "payload": "",
        "payloadType": "str",
        "topic": "topic",
        "topicType": "msg",
        "buttonColor": "",
        "textColor": "",
        "iconColor": "",
        "enableClick": true,
        "enablePointerdown": false,
        "pointerdownPayload": "",
        "pointerdownPayloadType": "str",
        "enablePointerup": false,
        "pointerupPayload": "",
        "pointerupPayloadType": "str",
        "x": 510,
        "y": 200,
        "wires": [
            []
        ]
    },
    {
        "id": "e9fc72bea92f8026",
        "type": "ui-button-group",
        "z": "b25a83a1347510a1",
        "name": "",
        "group": "1ff4c0fc452da5ae",
        "order": 2,
        "width": 6,
        "height": 1,
        "label": "",
        "className": "",
        "rounded": false,
        "useThemeColors": true,
        "passthru": false,
        "options": [
            {
                "label": "更新",
                "icon": "",
                "value": "true",
                "valueType": "bool",
                "color": "#009933"
            },
            {
                "label": "新增",
                "icon": "",
                "value": "false",
                "valueType": "bool",
                "color": "#999999"
            }
        ],
        "topic": "topic",
        "topicType": "msg",
        "x": 150,
        "y": 320,
        "wires": [
            [
                "83d1ad0abab59021"
            ]
        ]
    },
    {
        "id": "36641f428257d81d",
        "type": "function",
        "z": "b25a83a1347510a1",
        "name": "function 19",
        "func": "msg.payload = {\n    widgets: {\n        disable: ['aaa1']\n    }\n};\nreturn msg;\n",
        "outputs": 1,
        "timeout": 0,
        "noerr": 0,
        "initialize": "",
        "finalize": "",
        "libs": [],
        "x": 470,
        "y": 300,
        "wires": [
            [
                "5a2b9b2220bcb8cc"
            ]
        ]
    },
    {
        "id": "0db2b4e3bbad45c5",
        "type": "function",
        "z": "b25a83a1347510a1",
        "name": "function 20",
        "func": "msg.payload = {\n        widgets: {\n        enable: ['aaa1']\n        },\n};\nreturn msg;\n",
        "outputs": 1,
        "timeout": 0,
        "noerr": 0,
        "initialize": "",
        "finalize": "",
        "libs": [],
        "x": 470,
        "y": 360,
        "wires": [
            [
                "61ab509ad7bd1265"
            ]
        ]
    },
    {
        "id": "5a2b9b2220bcb8cc",
        "type": "ui-control",
        "z": "b25a83a1347510a1",
        "name": "",
        "ui": "164dd866f6ea63b8",
        "events": "all",
        "x": 660,
        "y": 300,
        "wires": [
            []
        ]
    },
    {
        "id": "61ab509ad7bd1265",
        "type": "ui-control",
        "z": "b25a83a1347510a1",
        "name": "",
        "ui": "164dd866f6ea63b8",
        "events": "all",
        "x": 660,
        "y": 360,
        "wires": [
            []
        ]
    },
    {
        "id": "aedea6e30e492c9f",
        "type": "function",
        "z": "b25a83a1347510a1",
        "name": "手自动使能",
        "func": "msg.enabled = msg.payload;\nreturn msg;",
        "outputs": 1,
        "timeout": 0,
        "noerr": 0,
        "initialize": "",
        "finalize": "",
        "libs": [],
        "x": 330,
        "y": 200,
        "wires": [
            [
                "adb3f9612e23595d"
            ]
        ]
    },
    {
        "id": "0f5c7250cc6a1334",
        "type": "ui-button-group",
        "z": "b25a83a1347510a1",
        "name": "",
        "group": "1ff4c0fc452da5ae",
        "order": 3,
        "width": 6,
        "height": 1,
        "label": "",
        "className": "",
        "rounded": false,
        "useThemeColors": true,
        "passthru": false,
        "options": [
            {
                "label": "更新",
                "icon": "",
                "value": "true",
                "valueType": "bool",
                "color": "#009933"
            },
            {
                "label": "新增",
                "icon": "",
                "value": "false",
                "valueType": "bool",
                "color": "#999999"
            }
        ],
        "topic": "topic",
        "topicType": "msg",
        "x": 150,
        "y": 200,
        "wires": [
            [
                "aedea6e30e492c9f"
            ]
        ]
    },
    {
        "id": "83d1ad0abab59021",
        "type": "switch",
        "z": "b25a83a1347510a1",
        "name": "",
        "property": "payload",
        "propertyType": "msg",
        "rules": [
            {
                "t": "true"
            },
            {
                "t": "false"
            }
        ],
        "checkall": "true",
        "repair": false,
        "outputs": 2,
        "x": 310,
        "y": 320,
        "wires": [
            [
                "36641f428257d81d"
            ],
            [
                "0db2b4e3bbad45c5"
            ]
        ]
    },
    {
        "id": "1ff4c0fc452da5ae",
        "type": "ui-group",
        "name": "test1",
        "page": "622748032a4d55f4",
        "width": "12",
        "height": 1,
        "order": 1,
        "showTitle": true,
        "className": "",
        "visible": "true",
        "disabled": "false",
        "groupType": "default"
    },
    {
        "id": "164dd866f6ea63b8",
        "type": "ui-base",
        "name": "myDashboard",
        "path": "/dashboard",
        "appIcon": "",
        "includeClientData": true,
        "acceptsClientConfig": [
            "ui-notification",
            "ui-control"
        ],
        "showPathInSidebar": false,
        "headerContent": "page",
        "navigationStyle": "default",
        "titleBarStyle": "default",
        "showReconnectNotification": true,
        "notificationDisplayTime": 1,
        "showDisconnectNotification": true,
        "allowInstall": true
    },
    {
        "id": "622748032a4d55f4",
        "type": "ui-page",
        "name": "test",
        "ui": "164dd866f6ea63b8",
        "path": "/page4",
        "icon": "home",
        "layout": "grid",
        "theme": "14bbe2c6e50ccbaf",
        "breakpoints": [
            {
                "name": "Default",
                "px": "0",
                "cols": "3"
            },
            {
                "name": "Tablet",
                "px": "576",
                "cols": "6"
            },
            {
                "name": "Small Desktop",
                "px": "768",
                "cols": "9"
            },
            {
                "name": "Desktop",
                "px": "1024",
                "cols": "12"
            }
        ],
        "order": 1,
        "className": "",
        "visible": "true",
        "disabled": "false"
    },
    {
        "id": "14bbe2c6e50ccbaf",
        "type": "ui-theme",
        "name": "defaultTheme",
        "colors": {
            "surface": "#ffffff",
            "primary": "#0094ce",
            "bgPage": "#eeeeee",
            "groupBg": "#ffffff",
            "groupOutline": "#cccccc"
        },
        "sizes": {
            "density": "default",
            "pagePadding": "12px",
            "groupGap": "12px",
            "groupBorderRadius": "4px",
            "widgetGap": "12px"
        }
    }
]

You are right, it does not work with widgets, it does with groups.

Here is a much simpler flow showing the problem

[{"id":"adb3f9612e23595d","type":"ui-button","z":"b25a83a1347510a1","group":"1ff4c0fc452da5ae","name":"aaa1","label":"aaa1","order":1,"width":0,"height":0,"emulateClick":false,"tooltip":"","color":"","bgcolor":"","className":"","icon":"","iconPosition":"left","payload":"","payloadType":"str","topic":"topic","topicType":"msg","buttonColor":"","textColor":"","iconColor":"","enableClick":true,"enablePointerdown":false,"pointerdownPayload":"","pointerdownPayloadType":"str","enablePointerup":false,"pointerupPayload":"","pointerupPayloadType":"str","x":150,"y":60,"wires":[["7cd148690197b75c"]]},{"id":"36641f428257d81d","type":"function","z":"b25a83a1347510a1","name":"Disable widget aaa1","func":"msg.payload = {\n    widgets: {\n        disable: ['aaa1']\n    }\n};\nreturn msg;\n","outputs":1,"timeout":0,"noerr":0,"initialize":"","finalize":"","libs":[],"x":360,"y":140,"wires":[["5a2b9b2220bcb8cc","9332a9d5e9214234"]]},{"id":"0db2b4e3bbad45c5","type":"function","z":"b25a83a1347510a1","name":"Disable group test1","func":"msg.payload = {\n        groups: {\n        disable: ['test1']\n        },\n};\nreturn msg;\n","outputs":1,"timeout":0,"noerr":0,"initialize":"","finalize":"","libs":[],"x":370,"y":200,"wires":[["9332a9d5e9214234","5a2b9b2220bcb8cc"]]},{"id":"5a2b9b2220bcb8cc","type":"ui-control","z":"b25a83a1347510a1","name":"","ui":"ID-BASE-1","events":"all","x":580,"y":140,"wires":[[]]},{"id":"4153459a8a283553","type":"inject","z":"b25a83a1347510a1","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":160,"y":140,"wires":[["36641f428257d81d"]]},{"id":"9332a9d5e9214234","type":"debug","z":"b25a83a1347510a1","name":"debug 54","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":620,"y":220,"wires":[]},{"id":"e7af59f0557d82ae","type":"inject","z":"b25a83a1347510a1","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":160,"y":200,"wires":[["0db2b4e3bbad45c5"]]},{"id":"7cd148690197b75c","type":"debug","z":"b25a83a1347510a1","name":"debug 57","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":280,"y":60,"wires":[]},{"id":"f4070ad374e9e75b","type":"function","z":"b25a83a1347510a1","name":"Enable group test1","func":"msg.payload = {\n        groups: {\n                enable: ['test1']\n        },\n};\nreturn msg;\n","outputs":1,"timeout":0,"noerr":0,"initialize":"","finalize":"","libs":[],"x":370,"y":240,"wires":[["5a2b9b2220bcb8cc","9332a9d5e9214234"]]},{"id":"3e565c8568ac83eb","type":"inject","z":"b25a83a1347510a1","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":160,"y":240,"wires":[["f4070ad374e9e75b"]]},{"id":"1ff4c0fc452da5ae","type":"ui-group","name":"test1","page":"622748032a4d55f4","width":"12","height":1,"order":1,"showTitle":true,"className":"","visible":"true","disabled":"false","groupType":"default"},{"id":"ID-BASE-1","type":"ui-base","name":"Dashboard","path":"/dashboard","appIcon":"","includeClientData":true,"acceptsClientConfig":["ui-control","ui-notification","ui-gauge-classic"],"showPathInSidebar":false,"headerContent":"page","titleBarStyle":"default","showReconnectNotification":false,"notificationDisplayTime":"1","showDisconnectNotification":true,"allowInstall":true},{"id":"622748032a4d55f4","type":"ui-page","name":"test","ui":"ID-BASE-1","path":"/page4","icon":"home","layout":"grid","theme":"14bbe2c6e50ccbaf","breakpoints":[{"name":"Default","px":"0","cols":"3"},{"name":"Tablet","px":"576","cols":"6"},{"name":"Small Desktop","px":"768","cols":"9"},{"name":"Desktop","px":"1024","cols":"12"}],"order":2,"className":"","visible":"true","disabled":"false"},{"id":"14bbe2c6e50ccbaf","type":"ui-theme","name":"defaultTheme","colors":{"surface":"#ffffff","primary":"#0094ce","bgPage":"#eeeeee","groupBg":"#ffffff","groupOutline":"#cccccc"},"sizes":{"density":"default","pagePadding":"12px","groupGap":"12px","groupBorderRadius":"4px","widgetGap":"12px"}},{"id":"9b02098421d10b59","type":"global-config","env":[],"modules":{"@flowfuse/node-red-dashboard":"1.26.0"}}]

The help text says:
Enable/Disable Pages & Groups & Widgets
Dashboard pages & groups & widgets can be disabled & re-enabled by sending a msg.payload object with the format

msg.payload = {
    pages: {
        enable: ['<Page Name>'],
        disable: ['<Page Name>']
    },
    groups: {
        enable: ['<Group Name>'],
        disable: ['<Group Name>']
    }
}

So it says it can be done with widgets, but there is no example of that. I wonder whether it has actually been implemented for widgets.

As a workaround you can send msg.enabled true or false direct to the node.

@joepavitt, should widget enable/disable work or is this an error in the help text?

Just as a test, can you try enabling/disabling it with the ID? From your flow, the ID of aaa1 is “adb3f9612e23595d”. I had the same issue with show/hide groups and using the ID worked.