diff --git a/src/plugins/qmldesigner/components/propertyeditor/propertyeditor.cpp b/src/plugins/qmldesigner/components/propertyeditor/propertyeditor.cpp
index a07a2b7f94ccb23e4bc0ca02ef0ad6ce33e45986..780343f9a0437db260f7e05c57d4ae045bf6c773 100644
--- a/src/plugins/qmldesigner/components/propertyeditor/propertyeditor.cpp
+++ b/src/plugins/qmldesigner/components/propertyeditor/propertyeditor.cpp
@@ -83,7 +83,7 @@ void createPropertyEditorValue(const QmlObjectNode &fxObjectNode, const QString
         valueObject = new PropertyEditorValue(propertyMap);
         QObject::connect(valueObject, SIGNAL(valueChanged(QString)), propertyMap, SIGNAL(valueChanged(QString)));
         QObject::connect(valueObject, SIGNAL(expressionChanged(QString)), propertyEditor, SLOT(changeExpression(QString)));
-        propertyMap->insert(propertyName, QmlMetaType::qmlType(valueObject->metaObject())->fromObject(valueObject));
+        propertyMap->insert(propertyName, QVariant::fromValue(valueObject));
     }
     valueObject->setName(propertyName);
     valueObject->setModelNode(fxObjectNode);
@@ -129,14 +129,14 @@ void PropertyEditor::NodeType::setup(const QmlObjectNode &fxObjectNode, const QS
         valueObject->setModelNode(fxObjectNode.modelNode());
         valueObject->setValue(fxObjectNode.modelNode().simplifiedTypeName());
         QObject::connect(valueObject, SIGNAL(valueChanged(QString)), &m_backendValuesPropertyMap, SIGNAL(valueChanged(QString)));
-        m_backendValuesPropertyMap.insert("className", QmlMetaType::qmlType(valueObject->metaObject())->fromObject(valueObject));
+        m_backendValuesPropertyMap.insert("className", QVariant::fromValue(valueObject));
 
         // id
         valueObject = new PropertyEditorValue(&m_backendValuesPropertyMap);
         valueObject->setName("id");
         valueObject->setValue(fxObjectNode.id());
         QObject::connect(valueObject, SIGNAL(valueChanged(QString)), &m_backendValuesPropertyMap, SIGNAL(valueChanged(QString)));
-        m_backendValuesPropertyMap.insert("id", QmlMetaType::qmlType(valueObject->metaObject())->fromObject(valueObject));
+        m_backendValuesPropertyMap.insert("id", QVariant::fromValue(valueObject));
 
         // anchors
         m_backendAnchorBinding.setup(QmlItemNode(fxObjectNode.modelNode()));
diff --git a/src/plugins/qmldesigner/components/propertyeditor/propertyeditorvalue.cpp b/src/plugins/qmldesigner/components/propertyeditor/propertyeditorvalue.cpp
index 4fa12cf2e06450c0d8fa8b326d0587460eda9d60..cd9335d69e864ee7b90c3af841e561a911200ea2 100644
--- a/src/plugins/qmldesigner/components/propertyeditor/propertyeditorvalue.cpp
+++ b/src/plugins/qmldesigner/components/propertyeditor/propertyeditorvalue.cpp
@@ -306,7 +306,7 @@ void PropertyEditorNodeWrapper::setup()
             valueObject->setValue(fxObjectNode.instanceValue(propertyName));
 
             connect(valueObject, SIGNAL(valueChanged(QString)), &m_valuesPropertyMap, SIGNAL(valueChanged(QString)));
-            m_valuesPropertyMap.insert(propertyName, QmlMetaType::qmlType(valueObject->metaObject())->fromObject(valueObject));
+            m_valuesPropertyMap.insert(propertyName, QVariant::fromValue(valueObject));
         }
     }
     connect(&m_valuesPropertyMap, SIGNAL(valueChanged(const QString &)), this, SLOT(changeValue(const QString&)));
diff --git a/src/plugins/qmldesigner/core/instances/objectnodeinstance.cpp b/src/plugins/qmldesigner/core/instances/objectnodeinstance.cpp
index 7d8de8229169d73cca7f0fb1eeca4e4173298ffe..34eb1aca71abb26a818d3c6420821b25368ebd60 100644
--- a/src/plugins/qmldesigner/core/instances/objectnodeinstance.cpp
+++ b/src/plugins/qmldesigner/core/instances/objectnodeinstance.cpp
@@ -301,10 +301,7 @@ static bool isObject(const QmlMetaProperty &metaProperty)
 
 static QVariant objectToVariant(QObject *object)
 {
-    const QMetaObject *metaObject = object->metaObject();
-    QmlType *qmlType = QmlMetaType::qmlType(metaObject);
-
-    return qmlType->fromObject(object);
+    return QVariant::fromValue(object);
 }
 
 static void removeObjectFromList(const QmlMetaProperty &metaProperty, QObject *object, QmlEngine *engine)