Microsoft merilis Windows UI Library 3 Pratinjau 4

Ikon waktu membaca 9 menit Baca


Pembaca membantu dukungan MSpoweruser. Kami mungkin mendapat komisi jika Anda membeli melalui tautan kami. Ikon Keterangan Alat

Baca halaman pengungkapan kami untuk mengetahui bagaimana Anda dapat membantu MSPoweruser mempertahankan tim editorial Baca lebih lanjut

WinUI adalah lapisan antarmuka pengguna yang berisi kontrol dan gaya modern untuk membangun aplikasi Windows, baik Desktop maupun UWP. Sebagai lapisan UI asli di Windows, ini mewujudkan Desain Lancar, memberikan setiap aplikasi Windows nuansa halus yang diharapkan pengguna.

[lwptoc title=”Pratinjau WinUI Library 3 4″ width=”40%” float=”kanan”]

WinUI 3 adalah versi terbaru dari kerangka kerja WinUI, dikirimkan akhir tahun ini. Ini secara dramatis memperluas WinUI menjadi kerangka kerja UX penuh, membuat WinUI tersedia untuk semua jenis aplikasi Windows – dari Win32 hingga UWP – untuk digunakan sebagai lapisan UI. Saat siap, setiap aplikasi Windows akan dapat memanfaatkan kontrol modernnya yang berfungsi terlepas dari versi Windows yang dijalankannya.

Dirilis hari ini, WinUI 3 Pratinjau 4 adalah rilis pratinjau stabilitas yang mencakup perbaikan bug penting dan peningkatan umum lainnya untuk kerangka kerja.

Kemampuan yang diperkenalkan di Pratinjau 4

  • Paritas dengan WinUI 2.5 (termasuk kontrol InfoBar, fitur baru di ProgressRing dan NavigationView, dan perbaikan bug)
  • Kemampuan bilah judul khusus: API Window.ExtendsContentIntoTitleBar dan Window.SetTitleBar baru yang memungkinkan pengembang membuat bilah judul khusus di aplikasi Desktop.
  • Dukungan VirtualSurfaceImageSource

Fitur dan kemampuan baru diperkenalkan di Pratinjau WinUI 3 sebelumnya

Fitur dan kemampuan berikut diperkenalkan di WinUI 3 Pratinjau 1-3 dan terus didukung di WinUI 3 Pratinjau 4.

  • Kemampuan untuk membuat aplikasi Desktop dengan WinUI, termasuk .NET 5 untuk aplikasi Win32
  • RadialGradientSikat
  • Pembaruan TabView
  • Pembaruan tema gelap
  • Perbaikan dan pembaruan untuk Tampilan Web2
    • Dukungan untuk DPI Tinggi
    • Dukungan untuk mengubah ukuran dan memindahkan jendela
    • Diperbarui untuk menargetkan versi Edge yang lebih baru
    • Tidak lagi diperlukan untuk mereferensikan paket Nuget khusus WebView2
  • Tukar RantaiPanel
  • Dukungan Inti MRT
    • Ini membuat aplikasi lebih cepat dan lebih ringan saat memulai dan menyediakan pencarian sumber daya yang lebih cepat.
  • Dukungan ARM64
  • Seret dan lepas di dalam dan di luar aplikasi
  • RenderTargetBitmap (saat ini hanya konten XAML – tidak ada konten SwapChainPanel)
  • Dukungan kursor kustom
  • Masukan di luar utas
  • Peningkatan pada pengalaman perkakas / pengembang kami:
    • Pohon Visual Langsung, Muat Ulang Panas, Penjelajah Properti Langsung, dan alat serupa
    • Intellisense untuk WinUI 3
  • Perbaikan yang diperlukan untuk migrasi open source

Untuk informasi lebih lanjut tentang manfaat WinUI 3 dan peta jalan WinUI, lihat Peta Jalan Perpustakaan UI Windows di GitHub.

Daftar bug diperbaiki di Pratinjau 4

Di bawah ini adalah daftar bug yang dihadapi pengguna yang telah diperbaiki oleh tim sejak Pratinjau 3. Ada juga banyak pekerjaan yang dilakukan seputar stabilisasi dan peningkatan pengujian kami.

  • Rilis ini telah menggunakan versi baru CS/WinRT dan Windows SDK, yang memperbaiki bug berikut:
    • Crash saat mengikat ke properti URI menggunakan {Binding}
    • Fungsi C#/WinRT Marshal tidak beroperasi dengan benar dengan .NET 5
  • WinUI 3 crash saat berjalan di Windows Insider Builds
    • Terima kasih kepada banyak kontributor komunitas yang telah melaporkan bug ini di GitHub!
  • WebView2 tidak menerapkan Bahasa/lokal aplikasi host ke CoreWebView2Environment
  • Kontrol Windows Community Toolkit DataGrid membuat aplikasi mogok saat memulai/ketika bilah gulir muncul
    • Terima kasih kepada banyak kontributor komunitas yang telah melaporkan bug ini di GitHub!
  • Render halaman menjadi buruk saat mode tampilan berubah
  • Hancur saat menggunakan Kotak Kombo Bahasa di CalendarView
  • Desktop WinUI 3: Tidak dapat keluar dari WebView2
  • Desktop WinUI 3: TreeView dengan TreeViewNodes turunan lumpuh
  • WinUI 3 Desktop: Tidak Dapat Memasukkan Teks ke dalam TextBox di dalam ContentDialog
  • Desktop WinUI 3: ALT dan F6 tidak berfungsi
  • Render SwapChainPanel lama yang dihapus di atas SwapChain baru
  • Desktop WinUI 3: Tidak dapat menggulir dengan trackpad
  • Crash saat menggunakan kontrol NavigationView dengan beberapa jendela di utas yang sama
  • Masalah Aksesibilitas: Tampilkan fokus langsung pada peluncuran aplikasi desktop WinUI
  • Pelanggaran akses saat menggulir di DataGrid
  • WinUI 3 Desktop: Bersepeda tab tidak berfungsi
  • Seret dan Jatuhkan di GridView gagal di aplikasi desktop dengan WinUI Xaml Islands
  • Masalah aksesibilitas: Tidak dapat menggulir dengan tombol PageUp/PageDown di Desktop WinUI 3
  • WebView2 memiliki ukuran area pandang yang salah
  • WebView2 mogok saat diklik setelah membuka MenuFlyout
  • WinUI 3 Desktop: Mencoba menjatuhkan DropDownButton atau flyout SplitButton menyebabkan aplikasi mogok
  • WebView2: Klik kanan dua kali pada mouse menyebabkan crash
  • Mengklik ToggleSplitButton menyebabkan aplikasi mogok
  • WinUI 3 Desktop: Jendela DesktopWindowXamlSource kosong terlihat di bilah tugas
  • WinUI 3 Desktop: DataGrid tidak ditampilkan
  • WinUI 3 Desktop: Tidak dapat menjatuhkan file ke Grid
  • WinUI 3 Desktop: ItemsRepeater crash di WinUI 3 Pratinjau 2
  • AccessViolationException dilempar saat memperbarui binding
  • WinUI 3 Desktop: aplikasi mogok saat scroll NavigationView
  • ItemsControl tidak diperbarui saat menambahkan atau menghapus item secara dinamis dalam koleksi ItemsSource-nya.
  • Kompilasi kesalahan C2760 di App.xaml.gh jika Mode Kesesuaian C++ diaktifkan

Batasan dan masalah yang diketahui

Rilis Pratinjau 4 hanyalah pratinjau dengan bug, batasan, dan masalah lain dengan skenario di sekitar aplikasi Desktop yang sangat baru.

Item berikut adalah beberapa masalah yang diketahui dengan WinUI 3 Pratinjau 4.

Alat pengembang

  • Hanya aplikasi C# dan C++/WinRT yang didukung
  • Aplikasi desktop mendukung .NET 5 dan C# 9, dan harus dikemas dalam aplikasi MSIX
  • Aplikasi UWP mendukung .NET Native dan C# 7.3
  • Alat pengembang dan Intellisense mungkin tidak berfungsi dengan baik di Visual Studio versi 16.8.
  • Tidak ada dukungan Desainer XAML
  • Aplikasi C++/CX baru tidak didukung, namun, aplikasi Anda yang ada akan terus berfungsi (harap pindah ke C++/WinRT sesegera mungkin)
  • Dukungan untuk beberapa jendela di aplikasi Desktop sedang berlangsung, tetapi belum lengkap dan stabil.
    • Silakan laporkan bug pada repo kami jika Anda menemukan masalah baru atau regresi dengan perilaku multi-jendela.
  • Penerapan desktop yang tidak dikemas tidak didukung
  • Saat menjalankan aplikasi Desktop menggunakan F5, pastikan Anda menjalankan proyek pengemasan. Menekan F5 pada proyek aplikasi akan menjalankan aplikasi yang belum dikemas, yang belum didukung oleh WinUI 3.

Fitur Platform Hilang

  • Dukungan Xbox
  • Dukungan HoloLens
  • Munculan berjendela
    • Lebih khusus lagi, ShouldConstrainToRootBounds properti selalu bertindak seolah-olah disetel ke true, terlepas dari nilai properti.
  • Dukungan tinta
  • Akrilik
  • MediaElement dan MediaPlayerElement
  • Kontrol Peta
  • RenderTargetBitmap untuk SwapChainPanel dan konten non-XAML
  • SwapChainPanel tidak mendukung transparansi
  • Global Reveal menggunakan perilaku mundur, kuas yang solid
  • Kepulauan XAML tidak didukung dalam rilis ini
  • Pustaka ekosistem pihak ketiga tidak akan berfungsi sepenuhnya
  • IME tidak berfungsi

Masalah Dikenal

  • Alt+F4 tidak menutup jendela aplikasi Desktop.
  • Karena perubahan dengan Jendela Inti, API WinRT berikut mungkin tidak lagi bekerja dengan Desktop aplikasi seperti yang diharapkan:

    Untuk informasi lebih lanjut tentang menggunakan API WinRT di aplikasi Desktop WinUI 3 Anda, lihat Windows Runtime API tersedia untuk aplikasi desktop.

  • Acara Windows.UI.ViewManagement.UISettings.ColorValuesChanged tidak lagi didukung di aplikasi Desktop. Ini dapat menyebabkan masalah jika Anda menggunakannya untuk mendeteksi perubahan pada tema Windows.
  • Rilis ini mencakup beberapa API eksperimental. Ini belum diuji secara menyeluruh oleh tim dan mungkin memiliki masalah yang tidak diketahui. Silahkan laporkan bug di repo kami jika Anda mengalami masalah apa pun.
  • Sebelumnya, untuk mendapatkan instance CompositionCapabilities Anda akan memanggil KomposisiCapabilites.GetForCurrentView(). Namun, kemampuan yang dikembalikan dari panggilan ini adalah tidak tergantung pada tampilan. Untuk mengatasi dan mencerminkan hal ini, kami telah menghapus statis GetForCurrentView() dalam rilis ini, jadi sekarang Anda dapat membuat KomposisiKemampuan objek secara langsung.
  • Untuk aplikasi C# UWP: Kerangka kerja WinUI 3 adalah seperangkat komponen WinRT yang dapat digunakan dari C++ (menggunakan C++/WinRT) atau C#. Saat menggunakan C#, ada dua versi .NET, tergantung pada model aplikasi: saat menggunakan WinUI 3 di aplikasi UWP, Anda menggunakan .NET Native; saat menggunakan di aplikasi Desktop Anda menggunakan .NET 5 (dan C#/WinRT). Saat menggunakan C# untuk aplikasi WinUI 3 di UWP, ada beberapa perbedaan namespace API dibandingkan dengan C# di aplikasi Desktop WinUI 3 atau C# Aplikasi WinUI 2: beberapa jenis ada di Microsoft namespace daripada a System ruang nama. Misalnya, daripada INotifyPropertyChanged antarmuka berada di System.ComponentModel namespace, ada di Microsoft.UI.Xaml.Data namespace. Ini berlaku untuk:
    • INotifyPropertyChanged (dan jenis terkait)
    • INotifyCollectionChanged
    • ICommand

    Grafik System versi namespace masih ada, tetapi tidak dapat digunakan dengan WinUI 3. Ini berarti bahwa ObservableCollection tidak berfungsi apa adanya di aplikasi WinUI 3 C# UWP. Untuk solusi, lihat KoleksiSampel interop dalam Contoh Galeri Kontrol XAML.

Apa selanjutnya?

Pengembang dapat melihat detail Microsoft peta jalan fitur untuk melihat kapan fitur tertentu akan dibawa ke WinUI 3.

Instal WinUI 3 Pratinjau 4

WinUI 3 Pratinjau 4 menyertakan templat proyek Visual Studio untuk membantu memulai membangun aplikasi dengan antarmuka pengguna berbasis WinUI, dan paket NuGet yang berisi pustaka WinUI. Untuk menginstal WinUI 3 Pratinjau 4, ikuti langkah-langkah ini.

Toolkit Komunitas Windows

Jika Anda menggunakan Toolkit Komunitas Windows, unduh versi terbaru.

Selain dari keterbatasan dan masalah yang diketahui, membangun aplikasi menggunakan proyek WinUI mirip dengan membangun aplikasi UWP dengan XAML dan WinUI 2.x. Oleh karena itu, sebagian besar dokumentasi panduan untuk aplikasi UWP dan Windows.UI Ruang nama WinRT di Windows SDK berlaku.

Untuk informasi selengkapnya tentang memulai dengan templat proyek WinUI, lihat artikel berikut ini:

Dokumentasi referensi API untuk rilis ini akan segera hadir tetapi sementara itu, pengembang dapat melihat: Dokumentasi referensi API WinUI 3 untuk Pratinjau 3.

Jika Anda membuat proyek menggunakan WinUI 3 Pratinjau 3, Anda dapat memutakhirkan proyek Anda untuk menggunakan Pratinjau 4. Lihat Gudang WinUI GitHub untuk petunjuk rinci.

Untuk memanfaatkan fitur perkakas terbaru yang ditambahkan ke WinUI 3 Pratinjau 4 seperti Hot Reload, Live Visual Tree, dan Live Property Explorer, Anda harus menggunakan versi pratinjau terbaru dari Visual Studio dengan pratinjau WinUI 3 terbaru dan pastikan untuk mengaktifkan Perkakas WinUI dalam Fitur Pratinjau Visual Studio, seperti yang dijelaskan dalam instruksi di sini.

Lihat WinUI 3 Pratinjau 4 cabang dari Galeri Kontrol XAML untuk aplikasi sampel yang menyertakan semua kontrol dan fitur WinUI 3 Preview 4.


Contoh aplikasi WinUI 3 Preview 4 XAML Controls Gallery

Rilis pratinjau WinUI 3 ini dimaksudkan untuk evaluasi awal dan untuk mengumpulkan umpan balik dari komunitas pengembang. Itu harus JANGAN digunakan untuk aplikasi produksi. Microsoft akan terus mengirimkan rilis pratinjau WinUI 3 hingga 2021, diikuti oleh rilis resmi pertama yang didukung pada Maret 2021.

Silakan gunakan Repo WinUI GitHub untuk memberikan umpan balik dan mencatat saran dan masalah.

Lebih lanjut tentang topik: pengembang, microsoft, pratinjau winui 3 4