diff --git a/.ado/templates/e2e-test-job.yml b/.ado/templates/e2e-test-job.yml
index bb4dace8f42..64bbcaeb2e2 100644
--- a/.ado/templates/e2e-test-job.yml
+++ b/.ado/templates/e2e-test-job.yml
@@ -90,6 +90,12 @@ jobs:
restoreSolution: packages/E2ETest/windows/ReactUWPTestApp.sln
verbosityRestore: Detailed # Options: quiet, normal, detailed
+ - task: PowerShell@2
+ displayName: Install MUX framework package
+ inputs:
+ targetType: "inline"
+ script: Add-AppPackage -path $(Build.SourcesDirectory)/packages/E2ETest/windows/packages/Microsoft.UI.Xaml.2.3.191129002/tools/AppX/${{ parameters.BuildPlatform }}/Release/Microsoft.UI.Xaml.2.3.appx
+
- task: CmdLine@2
displayName: Create bundle
inputs:
diff --git a/change/react-native-windows-2019-11-07-13-05-09-winui.json b/change/react-native-windows-2019-11-07-13-05-09-winui.json
new file mode 100644
index 00000000000..89a58159693
--- /dev/null
+++ b/change/react-native-windows-2019-11-07-13-05-09-winui.json
@@ -0,0 +1,8 @@
+{
+ "type": "prerelease",
+ "comment": "Add WinUI",
+ "packageName": "react-native-windows",
+ "email": "licanhua@live.com",
+ "commit": "c1fcca05e030c65759f142a628e7ade60c332988",
+ "date": "2019-11-07T21:05:08.996Z"
+}
\ No newline at end of file
diff --git a/packages/E2ETest/windows/ReactUWPTestApp/App.xaml b/packages/E2ETest/windows/ReactUWPTestApp/App.xaml
index b0c429ea36d..2e16904310c 100644
--- a/packages/E2ETest/windows/ReactUWPTestApp/App.xaml
+++ b/packages/E2ETest/windows/ReactUWPTestApp/App.xaml
@@ -1,7 +1,9 @@
-
-
+
+
+
diff --git a/packages/E2ETest/windows/ReactUWPTestApp/ReactUWPTestApp.csproj b/packages/E2ETest/windows/ReactUWPTestApp/ReactUWPTestApp.csproj
index 1107264463e..940cc0ba392 100644
--- a/packages/E2ETest/windows/ReactUWPTestApp/ReactUWPTestApp.csproj
+++ b/packages/E2ETest/windows/ReactUWPTestApp/ReactUWPTestApp.csproj
@@ -12,7 +12,7 @@
en-US
UAP
10.0.18362.0
- 10.0.14393.0
+ 10.0.15063.0
14
512
{A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
@@ -134,6 +134,9 @@
6.2.8
+
+ 2.3.191129002
+
@@ -164,4 +167,4 @@
-->
-
+
\ No newline at end of file
diff --git a/packages/microsoft-reactnative-sampleapps/windows/SampleAppCPP/SampleApp.vcxproj b/packages/microsoft-reactnative-sampleapps/windows/SampleAppCPP/SampleApp.vcxproj
index ac4af1d4fd2..af355128329 100644
--- a/packages/microsoft-reactnative-sampleapps/windows/SampleAppCPP/SampleApp.vcxproj
+++ b/packages/microsoft-reactnative-sampleapps/windows/SampleAppCPP/SampleApp.vcxproj
@@ -170,6 +170,7 @@
+
@@ -186,5 +187,6 @@
+
\ No newline at end of file
diff --git a/packages/microsoft-reactnative-sampleapps/windows/SampleAppCPP/packages.config b/packages/microsoft-reactnative-sampleapps/windows/SampleAppCPP/packages.config
index 790637cec08..28f472d005d 100644
--- a/packages/microsoft-reactnative-sampleapps/windows/SampleAppCPP/packages.config
+++ b/packages/microsoft-reactnative-sampleapps/windows/SampleAppCPP/packages.config
@@ -1,4 +1,5 @@
+
\ No newline at end of file
diff --git a/packages/microsoft-reactnative-sampleapps/windows/SampleAppCPP/pch.h b/packages/microsoft-reactnative-sampleapps/windows/SampleAppCPP/pch.h
index 7308667d869..1a79c7b1215 100644
--- a/packages/microsoft-reactnative-sampleapps/windows/SampleAppCPP/pch.h
+++ b/packages/microsoft-reactnative-sampleapps/windows/SampleAppCPP/pch.h
@@ -25,3 +25,9 @@
#include
#include
+
+#include
+#include
+#include
+#include
+#include
\ No newline at end of file
diff --git a/packages/microsoft-reactnative-sampleapps/windows/SampleAppCS/SampleAppCS.csproj b/packages/microsoft-reactnative-sampleapps/windows/SampleAppCS/SampleAppCS.csproj
index 4969ca95dc6..f9970ef4dcb 100644
--- a/packages/microsoft-reactnative-sampleapps/windows/SampleAppCS/SampleAppCS.csproj
+++ b/packages/microsoft-reactnative-sampleapps/windows/SampleAppCS/SampleAppCS.csproj
@@ -164,6 +164,9 @@
{c0a6bd9c-3ee5-4b12-8ce4-cee95178539c}
SampleLibraryCS
+
+ 2.3.191129002
+
diff --git a/packages/microsoft-reactnative-sampleapps/windows/SampleLibraryCPP/SampleLibraryCPP.vcxproj b/packages/microsoft-reactnative-sampleapps/windows/SampleLibraryCPP/SampleLibraryCPP.vcxproj
index bf635550434..7788d31a3e5 100644
--- a/packages/microsoft-reactnative-sampleapps/windows/SampleLibraryCPP/SampleLibraryCPP.vcxproj
+++ b/packages/microsoft-reactnative-sampleapps/windows/SampleLibraryCPP/SampleLibraryCPP.vcxproj
@@ -1,6 +1,6 @@
-
+
true
true
@@ -156,13 +156,13 @@
-
+
This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.
-
-
+
+
\ No newline at end of file
diff --git a/packages/microsoft-reactnative-sampleapps/windows/SampleLibraryCPP/packages.config b/packages/microsoft-reactnative-sampleapps/windows/SampleLibraryCPP/packages.config
index 790637cec08..da3ad3ff024 100644
--- a/packages/microsoft-reactnative-sampleapps/windows/SampleLibraryCPP/packages.config
+++ b/packages/microsoft-reactnative-sampleapps/windows/SampleLibraryCPP/packages.config
@@ -1,4 +1,4 @@
-
+
\ No newline at end of file
diff --git a/packages/playground/windows/playground/App.xaml b/packages/playground/windows/playground/App.xaml
index 7e236b6ed7c..44e44ce1cfd 100644
--- a/packages/playground/windows/playground/App.xaml
+++ b/packages/playground/windows/playground/App.xaml
@@ -3,5 +3,7 @@
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:Playground">
-
+
+
+
diff --git a/packages/playground/windows/playground/Playground.vcxproj b/packages/playground/windows/playground/Playground.vcxproj
index 6577b82660c..dcf20c52100 100644
--- a/packages/playground/windows/playground/Playground.vcxproj
+++ b/packages/playground/windows/playground/Playground.vcxproj
@@ -102,6 +102,7 @@
Designer
+
@@ -157,11 +158,13 @@
+
This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.
+
\ No newline at end of file
diff --git a/packages/playground/windows/playground/Playground.vcxproj.filters b/packages/playground/windows/playground/Playground.vcxproj.filters
index e798142691f..8b0e12041fa 100644
--- a/packages/playground/windows/playground/Playground.vcxproj.filters
+++ b/packages/playground/windows/playground/Playground.vcxproj.filters
@@ -63,6 +63,7 @@
+
diff --git a/packages/playground/windows/playground/packages.config b/packages/playground/windows/playground/packages.config
new file mode 100644
index 00000000000..ec022b5351e
--- /dev/null
+++ b/packages/playground/windows/playground/packages.config
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/vnext/Desktop.ABITests/React.Windows.Desktop.ABITests.vcxproj b/vnext/Desktop.ABITests/React.Windows.Desktop.ABITests.vcxproj
index 9a53627410c..604ead4960c 100644
--- a/vnext/Desktop.ABITests/React.Windows.Desktop.ABITests.vcxproj
+++ b/vnext/Desktop.ABITests/React.Windows.Desktop.ABITests.vcxproj
@@ -1,6 +1,6 @@
-
+
Debug
@@ -139,12 +139,12 @@
-
+
This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.
-
+
\ No newline at end of file
diff --git a/vnext/Desktop.DLL/React.Windows.Desktop.DLL.vcxproj b/vnext/Desktop.DLL/React.Windows.Desktop.DLL.vcxproj
index ad984779941..9c84abc8ccd 100644
--- a/vnext/Desktop.DLL/React.Windows.Desktop.DLL.vcxproj
+++ b/vnext/Desktop.DLL/React.Windows.Desktop.DLL.vcxproj
@@ -1,6 +1,6 @@
-
+
Debug
diff --git a/vnext/Desktop.Test.DLL/React.Windows.Desktop.Test.DLL.vcxproj b/vnext/Desktop.Test.DLL/React.Windows.Desktop.Test.DLL.vcxproj
index d9b70319d0d..b9d8f47c541 100644
--- a/vnext/Desktop.Test.DLL/React.Windows.Desktop.Test.DLL.vcxproj
+++ b/vnext/Desktop.Test.DLL/React.Windows.Desktop.Test.DLL.vcxproj
@@ -1,6 +1,6 @@
-
+
Debug
diff --git a/vnext/Desktop/React.Windows.Desktop.vcxproj b/vnext/Desktop/React.Windows.Desktop.vcxproj
index a882d38174c..eee91750a38 100644
--- a/vnext/Desktop/React.Windows.Desktop.vcxproj
+++ b/vnext/Desktop/React.Windows.Desktop.vcxproj
@@ -1,6 +1,6 @@
-
+
Debug
@@ -171,7 +171,7 @@
-
+
@@ -181,7 +181,7 @@
-
-
+
+
\ No newline at end of file
diff --git a/vnext/Desktop/packages.config b/vnext/Desktop/packages.config
index f037ec209f6..d927a5e9266 100644
--- a/vnext/Desktop/packages.config
+++ b/vnext/Desktop/packages.config
@@ -3,6 +3,6 @@
-
+
\ No newline at end of file
diff --git a/vnext/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj b/vnext/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj
index f3ba92dfd66..e8cf92d8703 100644
--- a/vnext/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj
+++ b/vnext/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj
@@ -1,7 +1,7 @@
-
+
true
true
@@ -270,14 +270,14 @@
-
+
This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.
-
-
+
+
\ No newline at end of file
diff --git a/vnext/Microsoft.ReactNative/packages.config b/vnext/Microsoft.ReactNative/packages.config
index bd147ef8642..1e11e946323 100644
--- a/vnext/Microsoft.ReactNative/packages.config
+++ b/vnext/Microsoft.ReactNative/packages.config
@@ -1,5 +1,5 @@
-
+
\ No newline at end of file
diff --git a/vnext/ReactUWP/Pch/pch.h b/vnext/ReactUWP/Pch/pch.h
index 82f27ccd221..a9d5f93d309 100644
--- a/vnext/ReactUWP/Pch/pch.h
+++ b/vnext/ReactUWP/Pch/pch.h
@@ -24,3 +24,9 @@
#include
#include
#include
+
+#include
+#include
+#include
+#include
+#include
diff --git a/vnext/ReactUWP/ReactUWP.vcxproj b/vnext/ReactUWP/ReactUWP.vcxproj
index 0e1dec6c835..c8c23995d8c 100644
--- a/vnext/ReactUWP/ReactUWP.vcxproj
+++ b/vnext/ReactUWP/ReactUWP.vcxproj
@@ -31,7 +31,8 @@
{2d5d43d9-cffc-4c40-b4cd-02efb4e2742b}
React.UWP
DynamicLibrary
- React.UWP
+ react.uwp
+ 2
true
Windows Store
10.0
@@ -230,8 +231,6 @@
-
-
@@ -425,10 +424,10 @@
-
+
@@ -441,6 +440,7 @@
+
@@ -451,6 +451,7 @@
+
diff --git a/vnext/ReactUWP/ReactUWP.vcxproj.filters b/vnext/ReactUWP/ReactUWP.vcxproj.filters
index 7bcd94b8270..88610026bdd 100644
--- a/vnext/ReactUWP/ReactUWP.vcxproj.filters
+++ b/vnext/ReactUWP/ReactUWP.vcxproj.filters
@@ -566,12 +566,6 @@
Modules
-
- Views\Image
-
-
- Views\Image
-
Utils
@@ -765,14 +759,14 @@
Views\cppwinrt
-
- Views\cppwinrt
-
Views\cppwinrt
Views\cppwinrt
+
+ Views\cppwinrt
+
\ No newline at end of file
diff --git a/vnext/ReactUWP/Views/DynamicAutomationPeer.h b/vnext/ReactUWP/Views/DynamicAutomationPeer.h
index 9b1fc405d6b..58724cb3fed 100644
--- a/vnext/ReactUWP/Views/DynamicAutomationPeer.h
+++ b/vnext/ReactUWP/Views/DynamicAutomationPeer.h
@@ -12,7 +12,7 @@
#include "DynamicAutomationProperties.h"
-#include "react.uwp.DynamicAutomationPeer.g.h"
+#include "DynamicAutomationPeer.g.h"
namespace winrt::react::uwp::implementation {
//
diff --git a/vnext/ReactUWP/Views/DynamicAutomationProperties.h b/vnext/ReactUWP/Views/DynamicAutomationProperties.h
index 3a2a2a3d427..105046bd45b 100644
--- a/vnext/ReactUWP/Views/DynamicAutomationProperties.h
+++ b/vnext/ReactUWP/Views/DynamicAutomationProperties.h
@@ -5,7 +5,7 @@
#include
-#include "react.uwp.DynamicAutomationProperties.g.h"
+#include "DynamicAutomationProperties.g.h"
namespace winrt::react::uwp::implementation {
diff --git a/vnext/ReactUWP/Views/ViewControl.h b/vnext/ReactUWP/Views/ViewControl.h
index 580d2f3d978..e731cea9b98 100644
--- a/vnext/ReactUWP/Views/ViewControl.h
+++ b/vnext/ReactUWP/Views/ViewControl.h
@@ -8,7 +8,7 @@
#include
#include
-#include "react.uwp.ViewControl.g.h"
+#include "ViewControl.g.h"
namespace winrt::react::uwp::implementation {
//
diff --git a/vnext/ReactUWP/Views/ViewPanel.h b/vnext/ReactUWP/Views/ViewPanel.h
index 13583c97a72..a21ae77aa80 100644
--- a/vnext/ReactUWP/Views/ViewPanel.h
+++ b/vnext/ReactUWP/Views/ViewPanel.h
@@ -8,7 +8,7 @@
#include
#include
-#include "react.uwp.ViewPanel.g.h"
+#include "ViewPanel.g.h"
namespace winrt::react::uwp::implementation {
diff --git a/vnext/ReactUWP/Views/module.g.cpp b/vnext/ReactUWP/Views/module.g.cpp
index 48763d1a1c5..b67512c1345 100644
--- a/vnext/ReactUWP/Views/module.g.cpp
+++ b/vnext/ReactUWP/Views/module.g.cpp
@@ -1,4 +1,5 @@
-// WARNING: Please don't edit this file. It was generated by C++/WinRT v1.0.190111.3
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
#include "pch.h"
#include "DynamicAutomationPeer.h"
@@ -6,14 +7,14 @@
#include "ViewControl.h"
#include "ViewPanel.h"
+#include
+
int32_t WINRT_CALL WINRT_CanUnloadNow() noexcept
{
-#ifdef _WRL_MODULE_H_
if (!::Microsoft::WRL::Module<::Microsoft::WRL::InProc>::GetModule().Terminate())
{
return 1; // S_FALSE
}
-#endif
if (winrt::get_module_lock())
{
@@ -61,12 +62,8 @@ int32_t WINRT_CALL WINRT_GetActivationFactory(void* classId, void** factory) noe
*factory = winrt::detach_abi(winrt::make());
return 0;
}
-
-#ifdef _WRL_MODULE_H_
+
return ::Microsoft::WRL::Module<::Microsoft::WRL::InProc>::GetModule().GetActivationFactory(static_cast(classId), reinterpret_cast<::IActivationFactory**>(factory));
-#else
- return winrt::hresult_class_not_available(name).to_abi();
-#endif
}
catch (...) { return winrt::to_hresult(); }
}
diff --git a/vnext/ReactUWP/packages.config b/vnext/ReactUWP/packages.config
index 0b218a1f8d6..277a3c9de89 100644
--- a/vnext/ReactUWP/packages.config
+++ b/vnext/ReactUWP/packages.config
@@ -1,6 +1,7 @@
+
diff --git a/vnext/docs/ConsumingRNW.md b/vnext/docs/ConsumingRNW.md
index 1e092b6dd98..59b03e121ac 100644
--- a/vnext/docs/ConsumingRNW.md
+++ b/vnext/docs/ConsumingRNW.md
@@ -81,6 +81,10 @@
See [Native Modules and React Native Windows](NativeModules.md).
+## Migrate project from old template
+- Add Microsoft.UI.Xaml nuget
+You need to manually add the nuget Microsoft.UI.Xaml 2.3.191129002 to your project
+
## Building a standalone React Native Windows App
Follow these steps to build a version of your app that you can install or publish to the store. This version will package your bundle and assets into the appx package so you don't need to run Metro.
diff --git a/vnext/local-cli/generator-windows/templates/cpp/proj/MyApp.vcxproj b/vnext/local-cli/generator-windows/templates/cpp/proj/MyApp.vcxproj
index 265d130cc02..6f34a7bd1d9 100644
--- a/vnext/local-cli/generator-windows/templates/cpp/proj/MyApp.vcxproj
+++ b/vnext/local-cli/generator-windows/templates/cpp/proj/MyApp.vcxproj
@@ -1,6 +1,6 @@
-
+
true
true
@@ -160,13 +160,15 @@
-
+
+
This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.
-
-
+
+
+
\ No newline at end of file
diff --git a/vnext/local-cli/generator-windows/templates/cpp/src/App.xaml b/vnext/local-cli/generator-windows/templates/cpp/src/App.xaml
index 02a94d5bd0b..cf6f1bbd2b9 100644
--- a/vnext/local-cli/generator-windows/templates/cpp/src/App.xaml
+++ b/vnext/local-cli/generator-windows/templates/cpp/src/App.xaml
@@ -4,5 +4,7 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:<%=ns%>"
xmlns:react="using:Microsoft.ReactNative">
-
+
+
+
diff --git a/vnext/local-cli/generator-windows/templates/cpp/src/packages.config b/vnext/local-cli/generator-windows/templates/cpp/src/packages.config
index 790637cec08..517e3053b7b 100644
--- a/vnext/local-cli/generator-windows/templates/cpp/src/packages.config
+++ b/vnext/local-cli/generator-windows/templates/cpp/src/packages.config
@@ -1,4 +1,5 @@
-
+
+
\ No newline at end of file
diff --git a/vnext/local-cli/generator-windows/templates/cpp/src/pch.h b/vnext/local-cli/generator-windows/templates/cpp/src/pch.h
index faa26ac75fc..e5b55575b32 100644
--- a/vnext/local-cli/generator-windows/templates/cpp/src/pch.h
+++ b/vnext/local-cli/generator-windows/templates/cpp/src/pch.h
@@ -17,3 +17,9 @@
#include
#include
+
+#include
+#include
+#include
+#include
+#include
\ No newline at end of file
diff --git a/vnext/local-cli/generator-windows/templates/cs/proj/MyApp.csproj b/vnext/local-cli/generator-windows/templates/cs/proj/MyApp.csproj
index e16e1b1d6ae..421b67c1443 100644
--- a/vnext/local-cli/generator-windows/templates/cs/proj/MyApp.csproj
+++ b/vnext/local-cli/generator-windows/templates/cs/proj/MyApp.csproj
@@ -134,6 +134,9 @@
{f7d32bd0-2749-483e-9a0d-1635ef7e3136}
Microsoft.ReactNative
+
+ 2.3.191129002
+
diff --git a/vnext/local-cli/generator-windows/templates/cs/src/App.xaml b/vnext/local-cli/generator-windows/templates/cs/src/App.xaml
index 02a94d5bd0b..cf6f1bbd2b9 100644
--- a/vnext/local-cli/generator-windows/templates/cs/src/App.xaml
+++ b/vnext/local-cli/generator-windows/templates/cs/src/App.xaml
@@ -4,5 +4,7 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:<%=ns%>"
xmlns:react="using:Microsoft.ReactNative">
-
+
+
+