diff --git a/src/plugins/qmldesigner/components/propertyeditor/propertyeditorvalue.cpp b/src/plugins/qmldesigner/components/propertyeditor/propertyeditorvalue.cpp
index df547f031f0167469db55af140da3984d918d85a..00b427bae7aabdf7725398e7b3bd1eaf1d69fa12 100644
--- a/src/plugins/qmldesigner/components/propertyeditor/propertyeditorvalue.cpp
+++ b/src/plugins/qmldesigner/components/propertyeditor/propertyeditorvalue.cpp
@@ -156,7 +156,7 @@ void PropertyEditorValue::setExpression(const QString &expression)
 bool PropertyEditorValue::isInSubState() const
 {
     const QmlDesigner::QmlObjectNode objectNode(modelNode());
-    return objectNode.isValid() && objectNode.propertyAffectedByCurrentState(name());
+    return objectNode.isValid() && objectNode.currentState().isValid() && objectNode.propertyAffectedByCurrentState(name());
 }
 
 bool PropertyEditorValue::isBound() const