Bevezetés a WinUI 2 for UWP használatbavételéhez

A WinUI 2.8 a WinUI legújabb stabil verziója, amely éles UWP-alkalmazások (és XAML-szigeteket használó asztali alkalmazások) készítésére használható.

A kódtár NuGet-csomagként érhető el, amely bármely új vagy meglévő Visual Studio-projekthez hozzáadható.

Megjegyzés:

További információ a Windows asztali alkalmazások WinUI 3 legújabb verziójával való készítéséről: WinUI 3.

A Visual Studio beállítása UWP-fejlesztéshez

Töltse le a Visual Studio 2022-t , és telepítse az UWP-fejlesztés eszközeit. További részletes útmutatásért lásd : UWP-alkalmazás létrehozása a Visual Studio dokumentációjában.

A Visual Studio Installer alkalmazás Számítási feladatok lapján válassza ki a következő számítási feladatokat és összetevőket:

  • Válassza ki a WinUI-alkalmazásfejlesztési számítási feladatot. Ezután a Telepítés részleteipanelen, a WinUI alkalmazásfejlesztési csomópont alatt válassza ki a szükséges UWP-beállítást (ez a további szükséges összetevőket is kiválasztja):

    • A C#-hoz válassza az Univerzális Windows Platform-eszközöket.
    • C++ esetén válassza a C++ (v14x) Univerzális Windows platformeszközöket (válassza ki a legújabb verziót, hacsak nincs konkrét oka egy korábbi verzió használatára).

Megjegyzés:

A Visual Studio 17.10- 17.12-ben ezt a számítási feladatot Windows-alkalmazásfejlesztésnek nevezzük.

WinUI letöltése és telepítése

  1. Nyisson meg egy meglévő projektet, vagy hozzon létre egy új projektet a Visual C# > Windows > Universal alatti Üres alkalmazás sablonnal vagy a nyelvi vetítéshez megfelelő sablonnal.

    Fontos

    A WinUI 2.8 használatához meg kell adnia a TargetPlatformVersion >= 10.0.18362.0 és a TargetPlatformMinVersion >= 10.0.17763.0 értéket a projekttulajdonságokban.

  2. A Megoldáskezelő panelen kattintson a jobb gombbal a projekt nevére, és válassza a NuGet-csomagok kezelése lehetőséget.

    Képernyőkép a Megoldáskezelő panelről, amelyen a projektre a jobb gombbal kattintott, és a NuGet-csomagok kezelése lehetőség ki van emelve.
    A Megoldáskezelő panelen kattintson a jobb gombbal a projektre, és jelölje ki a NuGet-csomagok kezelése lehetőséget.

  3. A NuGet Csomagkezelőben válassza a Tallózás lapot, és keressen rá a Microsoft.UI.Xaml vagy a WinUI kifejezésre. Válassza ki a használni kívánt WinUI NuGet-csomagokat (a Microsoft.UI.Xaml csomag minden alkalmazáshoz megfelelő Fluent-vezérlőket és funkciókat tartalmaz). Kattintson a Telepítés gombra.

    Az "Előzetes verzió belefoglalása" jelölőnégyzet bejelölésével megtekintheti a kísérleti új funkciókat tartalmazó legújabb előzetes verziókat.

    Képernyőkép a NuGet Package Manager párbeszédpanelről, amely a Tallózás lapot mutatja, a win u i szerepel a keresőmezőben, és az Előzetes kiadásokat is tartalmazza opció be van jelölve.
    A NuGet csomagkezelő párbeszédpanelén a Tallózás lap látható, a keresőmezőben a "winui" van, és a "Próbaverziók bekapcsolása" jelölőnégyzet be van jelölve.

  4. Adja hozzá a WinUI-témaerőforrásokat az App.xaml fájlhoz.

    Ennek kétféle módja van, attól függően, hogy rendelkezik-e további alkalmazáserőforrásokkal.

    a). Ha nincs szüksége más alkalmazáserőforrásokra, adja hozzá a WinUI-erőforrások elemet XamlControlsResources az alábbi példában látható módon:

    <Application
        x:Class="ExampleApp.App"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        RequestedTheme="Light">
    
        <Application.Resources>
            <XamlControlsResources xmlns="using:Microsoft.UI.Xaml.Controls" />
        </Application.Resources>
    
    </Application>
    

    b. Ha más erőforrásokkal is rendelkezik, javasoljuk, hogy adja hozzá azokat a XamlControlsResources.MergedDictionaries-hoz. Ez a platform erőforrásrendszerével együttműködve lehetővé teszi a XamlControlsResources erőforrások felülbírálását.

    <Application
        x:Class="ExampleApp.App"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:controls="using:Microsoft.UI.Xaml.Controls"
        RequestedTheme="Light">
    
        <Application.Resources>
            <controls:XamlControlsResources>
                <controls:XamlControlsResources.MergedDictionaries>
                    <ResourceDictionary Source="/Styles/Styles.xaml"/>
                    <!-- Other app resources here -->
                </controls:XamlControlsResources.MergedDictionaries>
            </controls:XamlControlsResources>
        </Application.Resources>
    
    </Application>
    
  5. Adjon hozzá egy hivatkozást a WinUI-csomagra az XAML-oldalakhoz és/vagy a kód mögötti oldalakhoz.

    • Az XAML-lapon adjon hozzá egy hivatkozást a lap tetején

      xmlns:muxc="using:Microsoft.UI.Xaml.Controls"
      
    • A kódban (ha a típusneveket nem szeretné minősíteni), hozzáadhat egy használati irányelvet.

      using MUXC = Microsoft.UI.Xaml.Controls;
      

C++/WinRT-projekt további lépései

Amikor NuGet-csomagot ad hozzá egy C++/WinRT-projekthez, az eszköz generálja a projekt \Generated Files\winrt mappájában lévő kivetítési fejlécek készletét. Ha be szeretné vonni ezeket a fejlécfájlokat a projektbe, hogy az új típusú hivatkozások feloldódjanak, az előre összeállított fejlécfájlba (általában pch.h) léphet, és belefoglalhatja őket. Az alábbi példa a Microsoft.UI.Xaml csomaghoz létrehozott fejlécfájlokat tartalmazza.

// pch.h
...
#include <winrt/Microsoft.UI.Xaml.Automation.Peers.h>
#include <winrt/Microsoft.UI.Xaml.Controls.Primitives.h>
#include <winrt/Microsoft.UI.Xaml.Media.h>
#include <winrt/Microsoft.UI.Xaml.XamlTypeInfo.h>
...

A WinUI egyszerű támogatásának lépésről lépésre történő hozzáadásához egy C++/WinRT-projekthez, tekintse meg a Egy egyszerű C++/WinRT WinUI példát.

WinUI a GitHubon

Üdvözöljük a hibajelentéseket a GitHub microsoft-ui-xaml adattárában .