diff --git a/src/plugins/qmldesigner/components/formeditor/formeditorview.cpp b/src/plugins/qmldesigner/components/formeditor/formeditorview.cpp
index 21bb70db66236d5761acc8c481b4703e348c0638..88ae5c677e15e8727c729ae58e1ee0088c2fe6c0 100644
--- a/src/plugins/qmldesigner/components/formeditor/formeditorview.cpp
+++ b/src/plugins/qmldesigner/components/formeditor/formeditorview.cpp
@@ -286,7 +286,7 @@ void FormEditorView::nodeIdChanged(const ModelNode& node, const QString& newId,
     QmlModelView::nodeIdChanged(node, newId, oldId);
     QmlItemNode itemNode(node);
 
-    if (itemNode.isValid()) {
+    if (itemNode.isValid() && node.nodeSourceType() == ModelNode::NodeWithoutSource) {
         FormEditorItem *item = m_scene->itemForQmlItemNode(itemNode);
         item->update();
     }