A Microsoft kiadta a Windows UI Library 3 4. előnézetét
9 perc olvas
Publikálva
Olvassa el közzétételi oldalunkat, hogy megtudja, hogyan segítheti az MSPowerusert a szerkesztői csapat fenntartásában Tovább
A WinUI egy felhasználói felület réteg, amely modern vezérlőket és stílusokat tartalmaz Windows-alkalmazások készítéséhez, mind az asztali, mind az UWP-hez. A Windows natív felhasználói felületeként a Fluent Design elemet testesíti meg, amely minden Windows-alkalmazásnak azt a csiszolt hangulatot kölcsönzi, amelyet a felhasználók elvárnak.
[lwptoc title=”WinUI Library 3 Preview 4″ width=”40%” float=”right”]
A WinUI 3 a WinUI keretrendszer legfrissebb verziója, amely még ebben az évben lesz elérhető. Drámaian kibővíti a WinUI-t egy teljes UX-keretrendszerré, így a WinUI-t minden típusú Windows-alkalmazáshoz – a Win32-től az UWP-ig – elérhetővé teszi felhasználói felületként való használatra. Ha készen áll, minden Windows-alkalmazás képes lesz kihasználni modern vezérlőinek előnyeit, amelyek függetlenül attól, hogy melyik Windows-verzión futnak.
Ma megjelent, WinUI 3 előnézet 4 egy stabilitási előnézeti kiadás, amely kritikus hibajavításokat és egyéb általános fejlesztéseket tartalmaz a keretrendszerhez.
A 4. előnézetben bemutatott képességek
- Paritás a WinUI 2.5-tel (tartalmazza az InfoBar vezérlést, a ProgressRing és a NavigationView új funkcióit, valamint a hibajavításokat)
- Egyéni címsor-képességek: új Window.ExtendsContentIntoTitleBar és Window.SetTitleBar API-k, amelyek lehetővé teszik a fejlesztők számára, hogy egyéni címsorokat hozzanak létre az asztali alkalmazásokban.
- VirtualSurfaceImageSource támogatás
A korábbi WinUI 3 előzetesekben bevezetett új szolgáltatások és képességek
A következő szolgáltatásokat és képességeket a WinUI 3 Preview 1-3 verziójában vezették be, és továbbra is támogatottak a WinUI 3 Preview 4-ben.
- Lehetőség asztali alkalmazások létrehozására WinUI-val, beleértve .NET 5 Win32 alkalmazásokhoz
- RadialGradientBrush
- TabView frissítések
- Sötét téma frissítései
- Fejlesztések és frissítések a webnézet2
- Nagy DPI támogatás
- Támogatás az ablakok átméretezéséhez és mozgatásához
- Frissítve, hogy az Edge újabb verzióját célozza meg
- Már nem szükséges egy WebView2-specifikus Nuget-csomagra hivatkozni
- SwapChainPanel
- MRT alaptámogatás
- Ez gyorsabbá és könnyebbé teszi az alkalmazásokat az indításkor, és gyorsabb erőforrás-keresést tesz lehetővé.
- ARM64 támogatás
- Húzza az alkalmazásokat belül és kívül
- RenderTargetBitmap (jelenleg csak XAML tartalom – nincs SwapChainPanel tartalom)
- Egyéni kurzor támogatás
- Szálon kívüli bemenet
- Szerszámozási / fejlesztői tapasztalataink fejlesztése:
- Live Visual Tree, Hot Reload, Live Property Explorer és hasonló eszközök
- Intellisense a WinUI 3-hoz
- A nyílt forráskódú migrációhoz szükséges fejlesztések
A WinUI 3 előnyeivel és a WinUI ütemtervével kapcsolatos további információkért lásd a Windows UI Library ütemterv a GitHub-on.
A 4. előnézetben javított hibák listája
Az alábbiakban felsoroljuk azokat a felhasználókat érintő hibákat, amelyeket a csapat a Preview 3 óta javított. A stabilizálás és a tesztelés javítása körül is rengeteg munka folyik.
- Ez a kiadás a CS/WinRT és a Windows SDK új verzióját vette át, amely a következő hibákat javította ki:
- Összeomlás URI-tulajdonhoz való kötődéskor a {Binding} használatával
- A C#/WinRT Marshal funkciói nem működnek megfelelően a .NET 5-tel
- A WinUI 3 összeomlik, amikor Windows Insider Builds rendszeren fut
- Köszönjük a közösség több közreműködőjének, hogy jelentették ezt a hibát a GitHubon!
- A WebView2 nem alkalmazza a gazdagép alkalmazás nyelvét/hely-beállítását a CoreWebView2Environment számára
- A Windows Community Toolkit DataGrid vezérlése összeomlik az alkalmazás indításakor/a görgetősávok megjelenésekor
- Köszönjük a közösség több közreműködőjének, hogy jelentették ezt a hibát a GitHubon!
- Az oldalmegjelenítés rossz állapotba kerül, amikor a megjelenítési mód megváltozik
- Összeomlás a Language ComboBox használatakor a CalendarView-ban
- WinUI 3 Desktop: Nem lehet kilépni a WebView2-ből
- WinUI 3 Desktop: A TreeView a származtatott TreeViewNodes-okkal összeomlik
- WinUI 3 Desktop: Nem lehet szöveget bevinni a TextBoxba a ContentDialogon belül
- WinUI 3 Desktop: Az ALT és az F6 nem működik
- A régi eltávolított SwapChainPanel az új SwapChain tetején jelenik meg
- WinUI 3 Desktop: Nem lehet görgetni a görgetőpaddal
- Összeomlás, ha ugyanazon a szálon több ablakkal használja a NavigationView vezérlőt
- Kisegítő lehetőségek: Mutasson fókuszt a WinUI asztali alkalmazás indításakor
- Hozzáférés megsértése a DataGridben való görgetés közben
- WinUI 3 Desktop: A lapozás nem működik
- A GridView húzása meghiúsul a WinUI Xaml Islands asztali alkalmazásban
- Kisegítő lehetőségek: Nem lehet görgetni a PageUp/PageDown billentyűkkel a WinUI 3 Desktopon
- A WebView2 nézetablak mérete rossz
- A WebView2 összeomlik kattintásra a MenuFlyout megnyitása után
- WinUI 3 Desktop: A DropDownButton vagy a SplitButton kirepülésének kísérlete az alkalmazás összeomlását okozza
- WebView2: Kattintson duplán a jobb egérgombbal az összeomlást okozza
- A ToggleSplitButton gombra kattintva az alkalmazás összeomlik
- WinUI 3 Desktop: Üres DesktopWindowXamlSource ablak látható a tálcán
- WinUI 3 Desktop: A DataGrid nem jelenik meg
- WinUI 3 Desktop: Nem lehet fájlokat rádobni a Gridre
- WinUI 3 Desktop: Az ItemsRepeater összeomlik a WinUI 3 Preview 2-ben
- AccessViolationException kivétel a kötések frissítésekor
- WinUI 3 Desktop: az alkalmazás összeomlik a NavigationView görgetésénél
- Az ItemsControl nem frissül, miközben dinamikusan ad hozzá vagy távolít el elemeket az ItemsSource gyűjteményében.
- C2760 fordítási hiba az App.xaml.gh fájlban, ha a C++ megfelelőségi mód engedélyezve van
Korlátozások és ismert kérdések
A Preview 4 kiadás egyszerűen egy előnézeti hibákkal, korlátozásokkal és az asztali alkalmazások körüli forgatókönyvekkel kapcsolatos egyéb problémákkal, amelyek különösen újak.
A következő tételek a WinUI 3 Preview 4 ismert problémái közé tartoznak.
Fejlesztői eszközök
- Csak a C# és C++/WinRT alkalmazások támogatottak
- Az asztali alkalmazások támogatják a .NET 5-öt és a C#9-et, és MSIX alkalmazásba kell csomagolni
- Az UWP-alkalmazások támogatják a .NET Native-t és a C# 7.3-at
- Előfordulhat, hogy a fejlesztői eszközök és az Intellisense nem működnek megfelelően a Visual Studio 16.8-as verziójában.
- Nincs XAML Designer támogatás
- Az új C++/CX alkalmazások nem támogatottak, de a meglévő alkalmazásai továbbra is működni fognak (kérjük, a lehető leghamarabb térjen át C++/WinRT-re)
- Az asztali alkalmazások több ablakának támogatása folyamatban van, de még nem teljes és stabil.
- Kérjük, jelentsen be egy hibát a tárhelyünkön, ha új problémákat vagy regressziókat talál a többablakos viselkedéssel kapcsolatban.
- A csomagolatlan asztali telepítés nem támogatott
- Ha asztali alkalmazást futtat az F5 használatával, győződjön meg arról, hogy a csomagolási projektet futtatja. Az F5 billentyű lenyomása az alkalmazásprojekten egy csomagolatlan alkalmazást fog futtatni, amelyet a WinUI 3 még nem támogat.
Hiányzó platformfunkciók
- Xbox támogatás
- HoloLens támogatás
- Ablakos előugró ablakok
- Pontosabban, a
ShouldConstrainToRootBounds
tulajdonság mindig úgy működik, mintha be lenne állítvatrue
, függetlenül az ingatlan értékétől.
- Pontosabban, a
- Tintafestés támogatása
- Akril
- MediaElement és MediaPlayerElement
- MapControl
- RenderTargetBitmap SwapChainPanel és nem XAML tartalomhoz
- A SwapChainPanel nem támogatja az átlátszóságot
- A Global Reveal tartalék viselkedést, szilárd ecsetet használ
- A XAML Islands nem támogatott ebben a kiadásban
- A harmadik féltől származó ökoszisztéma-könyvtárak nem fognak teljes mértékben működni
- Az IME-k nem működnek
Ismert problémák
- Az Alt+F4 nem zárja be az asztali alkalmazások ablakait.
- -val történt változások miatt CoreWindow, előfordulhat, hogy a következő WinRT API-k már nem működnek együtt asztali alkalmazások a várakozásoknak megfelelően:
ApplicationView
és az összes kapcsolódó API nem fog működni.CoreApplicationView
és az összes kapcsolódó API nem fog működni.- Minden termék
GetForCurrentView
Például előfordulhat, hogy az API-k nem támogatottakCoreInputView.GetForCurrentView
. CoreWindow.GetForCurrentThread
most nullát ad vissza.
További információért a WinRT API-k használatáról a WinUI 3 Desktop alkalmazásban lásd: Windows Runtime API-k elérhetők az asztali alkalmazásokhoz.
- Windows.UI.ViewManagement.UISettings.ColorValuesChanged Event már nem támogatott az asztali alkalmazásokban. Ez problémákat okozhat, ha a Windows-témák változásainak észlelésére használja.
- Ez a kiadás néhány kísérleti API-t tartalmaz. Ezeket a csapat nem tesztelte alaposan, és előfordulhat, hogy ismeretlen problémák vannak. Kérem hiba bejelentése a repónkról, ha bármilyen problémába ütközik.
- Korábban egy CompositionCapabilities példány lekéréséhez hívnia kellett CompositionCapabilites.GetForCurrentView(). A hívásból visszaadott képességek azonban igen nem nézettől függ. Ennek megoldására és tükrözésére töröltük a GetForCurrentView() statikus elemet ebből a kiadásból, így most létrehozhat egy Kompozíciós lehetőségek közvetlenül tárgyat.
- C# UWP-alkalmazások esetén: A WinUI 3 keretrendszer WinRT-összetevők halmaza, amely C++-ból (C++/WinRT használatával) vagy C#-ból használható. C# használatakor a .NET két verziója létezik, az alkalmazás típusától függően: ha WinUI 3-at használ egy UWP-alkalmazásban, akkor .NET Native-t használ; ha asztali alkalmazásban használja, .NET 5-öt (és C#/WinRT-t) használ. Ha C#-t használ egy WinUI 3-alkalmazáshoz UWP-ben, néhány API-névtér különbség van a WinUI 3 asztali alkalmazásban vagy a C#-ban lévő C#-hoz képest. WinUI 2 alkalmazás: bizonyos típusok a
Microsoft
névtér helyett aSystem
névtér. Például, nem pedig aINotifyPropertyChanged
interfész aSystem.ComponentModel
névtérben vanMicrosoft.UI.Xaml.Data
névtér. Ez a következőkre vonatkozik:INotifyPropertyChanged
(és kapcsolódó típusok)INotifyCollectionChanged
ICommand
A
System
névtér-verziók továbbra is léteznek, de nem használhatók a WinUI 3-mal. Ez azt jelenti, hogyObservableCollection
nem működik a WinUI 3 C# UWP alkalmazásokban. A megoldáshoz lásd a GyűjteményekInterop minta a XAML Controls Gallery minta.
Mi következik?
A fejlesztők megtekinthetik a Microsoft részletes jellemző ütemtervet hogy megtudja, mikor kerülnek bizonyos szolgáltatások a WinUI 3-ba.
Telepítse a WinUI 3 Preview 4-et
A WinUI 3 Preview 4 Visual Studio projektsablonokat tartalmaz, amelyek segítenek az alkalmazások WinUI-alapú felhasználói felülettel történő létrehozásában, valamint a WinUI-könyvtárakat tartalmazó NuGet-csomagban. A WinUI 3 Preview 4 telepítéséhez kövesse az alábbi lépéseket.
Windows közösségi eszközkészlet
Ha a Windows közösségi eszközkészletet használja, töltse le a legújabb verziót.
Eltekintve a korlátozások és ismert problémák, egy alkalmazás elkészítése a WinUI projektekkel hasonló egy UWP alkalmazás elkészítéséhez XAML és WinUI 2.x használatával. Ezért a legtöbb a útmutató dokumentációt UWP alkalmazásokhoz és a Windows.UI A Windows SDK WinRT névterei alkalmazhatók.
A WinUI projektsablonok használatának megkezdésével kapcsolatos további információkért tekintse meg a következő cikkeket:
Hamarosan megjelenik egy API referenciadokumentáció ehhez a kiadáshoz, de addig a fejlesztők megnézhetik a WinUI 3 API referenciadokumentáció a 3. előnézethez.
Ha a WinUI 3 Preview 3 használatával hozott létre projektet, frissítheti a projektet Preview 4 használatára. Lásd a WinUI GitHub adattár részletes útmutatásért.
A WinUI 3 Preview 4-hez hozzáadott legújabb eszközfunkciók, például a Hot Reload, a Live Visual Tree és a Live Property Explorer előnyeinek kihasználásához a Visual Studio legújabb előnézeti verzióját kell használnia a legújabb WinUI 3 előnézettel, és feltétlenül engedélyeznie kell WinUI-eszközök a Visual Studio előnézeti szolgáltatásaiban, a leírás szerint utasításokat itt.
XAML Controls Gallery (WinUI 3 Preview 4 ág)
Lásd az A XAML Controls Gallery WinUI 3 Preview 4 ága egy példaalkalmazáshoz, amely tartalmazza a WinUI 3 Preview 4 összes vezérlőjét és funkcióját.
Példa a WinUI 3 Preview 4 XAML Controls Gallery alkalmazásra
A WinUI 3 előzetes verziója korai értékelésre és a fejlesztői közösség visszajelzéseinek összegyűjtésére szolgál. Kellene NEM éles alkalmazásokhoz használható. A Microsoft továbbra is szállítja a WinUI 3 előzetes verzióit 2021-ig, majd az első hivatalos, támogatott kiadást 2021 márciusában.
Kérjük, használja a WinUI GitHub repo visszajelzést adni, valamint javaslatokat és problémákat naplózni.