import QtQuick 2.12 import QtQuick.Window 2.12 import QtQml.Models 2.12 Window { id: win visible: true width: 640 height: 480 Component { id: dlgMdlComponent DelegateModel { id: visualModel filterOnGroup: "selected" model: ListModel { id: mdl ListElement { name: "a" visible: false } ListElement { name: "b" visible: true } ListElement { name: "c" visible: true } ListElement { name: "d" visible: true } ListElement { name: "e" visible: false } ListElement { name: "f" visible: true } } groups: [ DelegateModelGroup { name: "selected" includeByDefault: true } ] delegate: Text { visible: DelegateModel.inSelected property var idx Component.onCompleted: { console.log("created", model.index, "name", model.name, "visible", model.visible) idx = index DelegateModel.inPersistedItems = true DelegateModel.inSelected = model.visible } Component.onDestruction: console.log("destroyed", idx) text: model.name } } } ListView { //This works and shows items with "visible: true" //model: dlgMdlComponent.createObject(this) anchors.fill: parent focus: true Keys.onPressed: { //This does not work and shows only items "c" "d" (not "b" and "f") //This create item "b" but does not create item "f" //qml: created 0 name a visible false //qml: created 2 name c visible true //qml: created 3 name d visible true //qml: created 4 name e visible false //qml: created 1 name b visible true model = dlgMdlComponent.createObject(this) } } }