diff --git a/src/plugins/qmldesigner/core/instances/graphicsobjectnodeinstance.cpp b/src/plugins/qmldesigner/core/instances/graphicsobjectnodeinstance.cpp
index 973ec1029e62acb3b368eb93357c290fc35a9440..c417a2d68292a99e2bf049868977f2205c0d567a 100644
--- a/src/plugins/qmldesigner/core/instances/graphicsobjectnodeinstance.cpp
+++ b/src/plugins/qmldesigner/core/instances/graphicsobjectnodeinstance.cpp
@@ -193,7 +193,7 @@ void GraphicsObjectNodeInstance::paint(QPainter *painter) const
 
         foreach(QGraphicsItem *graphicsItem, graphicsObject()->childItems()) {
             QGraphicsObject *graphicsObject = qgraphicsitem_cast<QGraphicsObject*>(graphicsItem);
-            if (graphicsObject && !graphicsObject->property("HasFormEditorItem").toBool())
+            if (graphicsObject && !nodeInstanceView()->hasInstanceForObject(graphicsObject))
                 paintRecursively(graphicsItem, painter);
         }
     }
@@ -213,8 +213,6 @@ QPair<QGraphicsObject*, bool> GraphicsObjectNodeInstance::createGraphicsObject(c
     bool hasContent = !graphicsObject->flags().testFlag(QGraphicsItem::ItemHasNoContents) || metaInfo.isComponent();
     graphicsObject->setFlag(QGraphicsItem::ItemHasNoContents, false);
 
-    graphicsObject->setProperty("HasFormEditorItem", true);
-
     return qMakePair(graphicsObject, hasContent);
 }