diff --git a/samples/ControlCatalog.NetCore/ControlCatalog.NetCore.csproj b/samples/ControlCatalog.NetCore/ControlCatalog.NetCore.csproj
index 2db150ec85..0667644643 100644
--- a/samples/ControlCatalog.NetCore/ControlCatalog.NetCore.csproj
+++ b/samples/ControlCatalog.NetCore/ControlCatalog.NetCore.csproj
@@ -45,6 +45,7 @@
en
+ app.manifest
diff --git a/samples/ControlCatalog.NetCore/app.manifest b/samples/ControlCatalog.NetCore/app.manifest
new file mode 100644
index 0000000000..db90057191
--- /dev/null
+++ b/samples/ControlCatalog.NetCore/app.manifest
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Windows/Avalonia.Win32/Win32NativeControlHost.cs b/src/Windows/Avalonia.Win32/Win32NativeControlHost.cs
index 2a1628ea7d..fd05e780bf 100644
--- a/src/Windows/Avalonia.Win32/Win32NativeControlHost.cs
+++ b/src/Windows/Avalonia.Win32/Win32NativeControlHost.cs
@@ -94,6 +94,10 @@ namespace Avalonia.Win32
IntPtr.Zero,
IntPtr.Zero,
IntPtr.Zero);
+
+ if (Handle == IntPtr.Zero)
+ throw new InvalidOperationException("Unable to create child window for native control host. Application manifest with supported OS list might be required.");
+
if (layered)
UnmanagedMethods.SetLayeredWindowAttributes(Handle, 0, 255,
UnmanagedMethods.LayeredWindowFlags.LWA_ALPHA);