Bagikan melalui


Catatan rilis saluran pratinjau terbaru untuk SDK Aplikasi Windows

Penting

Saluran pratinjau tidak didukung untuk digunakan di lingkungan produksi, dan aplikasi yang menggunakan rilis pratinjau tidak dapat diterbitkan ke Microsoft Store.

Saluran pratinjau mencakup rilis SDK Aplikasi Windows dengan fitur saluran pratinjau dalam tahap pengembangan yang terlambat. Rilis pratinjau tidak menyertakan fitur eksperimental dan API tetapi mungkin masih tunduk pada perubahan yang melanggar sebelum rilis stabil berikutnya.

Tautan penting:

Pratinjau arsip catatan rilis saluran:

Pratinjau Versi 1.6 2 (1.6.0-preview2)

Ini adalah rilis terbaru saluran pratinjau untuk versi 1.6.

Di aplikasi SDK Aplikasi Windows 1.5 (dari saluran stabil) yang ada, Anda dapat memperbarui paket Nuget Anda ke 1.6.0-preview2 (lihat bagian Perbarui paket di Menginstal dan mengelola paket di Visual Studio menggunakan Manajer Paket NuGet).

Untuk runtime dan MSIX yang diperbarui, lihat Unduhan untuk SDK Aplikasi Windows.

Fitur baru

Perubahan proyek C# yang diperlukan untuk 1.6-preview2

Panduan proyek C# dari 1.6-preview1 juga diperlukan untuk rilis ini.

Dukungan AOT asli

1.6-preview2 mencakup perubahan signifikan untuk memperbarui ke Microsoft.Windows.CsWinRT versi 2.1.1 yang dirilis dan membuat pembangunan lebih andal untuk kompilasi Ahead-Of-Time asli.

Integrasi SDK Edge WebView2 yang Diperbarui

Rilis ini sekarang mereferensikan versi Microsoft.Web.WebView2 paket 1.0.2651.64 yang dirilis, yang harus memperbaiki masalah yang berpusat pada versi prarilis yang direferensikan dalam 1.6-preview1. Seperti yang disebutkan dalam 1.6-preview1, aplikasi sekarang dapat memilih versi Microsoft.Web.WebView2 paket yang lebih baru jika diinginkan.

Perbaikan Bug

1.6-preview2 berisi perbaikan baru berikut sejak rilis 1.6-preview1:

  • Memperbaiki crash saat mengatur InfoBar.IsOpen di .xaml. Untuk informasi selengkapnya, lihat Masalah GitHub #8391.
  • Memperbaiki masalah di mana elemen HTML akan kehilangan pengambilan pointer ketika mouse bergerak di luar WebView2 batas. Untuk informasi selengkapnya, lihat Masalah GitHub #8677.
  • Memperbaiki masalah saat seret dan jatuhkan ke flyout dengan ShouldConstrainToRootBounds=false tidak berfungsi. Untuk informasi selengkapnya, lihat Masalah GitHub #9276.
  • Memperbaiki masalah saat ms-appx:// referensi tidak berfungsi saat PublishSingleFile diaktifkan. Untuk informasi selengkapnya, lihat Masalah GitHub #9468.
  • Memperbaiki masalah di mana simbol debugger tidak berfungsi dengan benar untuk beberapa biner. Untuk informasi selengkapnya, lihat Masalah GitHub #4633.
  • Memperbaiki hentian build saat menggunakan /permissive-. Untuk informasi selengkapnya, lihat Masalah GitHub #4643.
  • Memperbaiki beberapa perubahan pemecahan API dalam 1.6-preview1 yang disebabkan oleh parameter yang diganti namanya. Untuk informasi selengkapnya, lihat Masalah GitHub #4645.
  • Pemutusan build konflik jenis tetap dihantam oleh beberapa proyek dalam 1.6-preview1, terutama dengan Windows.UI.Text jenis. Untuk informasi selengkapnya, lihat Masalah GitHub #4646.
  • Memperbaiki masalah dengan pencarian sumber daya berdasarkan pustaka kontrol di 1.6-preview1. Untuk informasi selengkapnya, lihat Masalah GitHub #4649.
  • Memperbaiki potensi crash saat subkelas NavigationView.
  • Memperbaiki masalah di mana batas tabel dalam RichEditBox tidak akan menghapus dengan benar saat menggulir atau mengurangi ukuran tabel.
  • Memperbaiki masalah di mana flyout memiliki MediaTransportControls latar belakang yang sepenuhnya transparan.
  • Memperbaiki masalah saat menyeret ke WebView2 akan gagal atau jatuh di lokasi yang salah pada faktor skala tampilan selain 100% atau ketika penskalakan teks sistem diaktifkan.
  • Memperbaiki masalah di mana TextBox/RichEditBox tidak akan mengumumkan ke alat Aksesibilitas saat input diblokir karena berada pada MaxLength batas.

Pratinjau Versi 1.6 1 (1.6.0-preview1)

Ini adalah rilis terbaru saluran pratinjau untuk versi 1.6.

Di aplikasi SDK Aplikasi Windows 1.5 (dari saluran stabil) yang ada, Anda dapat memperbarui paket Nuget Anda ke 1.6.0-preview1 (lihat bagian Perbarui paket di Menginstal dan mengelola paket di Visual Studio menggunakan Manajer Paket NuGet).

Untuk runtime dan MSIX yang diperbarui, lihat Unduhan untuk SDK Aplikasi Windows.

Fitur baru

Catatan

Kontrol TitleBar baru yang kami rilis dalam 1.6-experimental1 belum tersedia dalam build non-eksperimental 1,6 untuk memungkinkan lebih banyak waktu untuk mengevaluasi dan merespons umpan balik komunitas. Kami menerima banyak input hebat di sini dan ingin memastikan kami meluangkan waktu yang diperlukan untuk mengatasinya.

Perubahan proyek C# yang diperlukan untuk 1.6-preview1

Dalam 1.6-preview1, SDK Aplikasi Windows aplikasi terkelola memerlukan Microsoft.Windows.SDK.NET.Ref *.*.*.38 , yang dapat ditentukan melalui WindowsSdkPackageVersion dalam file Andacsproj. Contohnya:

<Project Sdk="Microsoft.NET.Sdk">
   <PropertyGroup>
       <OutputType>WinExe</OutputType>
       <TargetFramework>net8.0-windows10.0.22621.0</TargetFramework>
       <TargetPlatformMinVersion>10.0.17763.0</TargetPlatformMinVersion>
       <WindowsSdkPackageVersion>10.0.22621.38</WindowsSdkPackageVersion>
   <PropertyGroup>
   ...

Selain itu, SDK Aplikasi Windows aplikasi terkelola harus diperbarui ke Microsoft.Windows.CsWinRT 2.1.1 (atau yang lebih baru).

Dukungan AOT asli

Properti proyek .NET PublishAot sekarang didukung untuk kompilasi Ahead-Of-Time asli. Untuk detail tentang AOT Asli, lihat Penyebaran AOT Asli. Karena AOT dibangun berdasarkan dukungan Pemangkasan, banyak panduan terkait Pemangkasan yang sebelumnya dijelaskan dalam rilis 1.6-eksperimental1 juga berlaku. Lihat Dukungan AOT asli untuk informasi selengkapnya.

Seperti disebutkan di atas, proyek C# harus memiliki referensi paket ke Microsoft.Windows.CsWinRT 2.1.1 (atau yang lebih baru). Versi ini mencakup implementasi aman AOT ICustomPropertyProvider . Jenis yang digunakan dengan dukungan ini harus ditandai dengan WinRT.GeneratedBindableCustomProperty atribut bersama dengan dibuat partial.

Integrasi SDK Edge WebView2 yang Diubah

SDK Aplikasi Windows sekarang menggunakan SDK Edge WebView2 sebagai referensi NuGet daripada menyematkan versi hardcoded SDK Edge WebView2. Model baru memungkinkan aplikasi untuk memilih versi Microsoft.Web.WebView2 paket yang lebih baru alih-alih dibatasi pada versi yang dibuat SDK Aplikasi Windows. Model baru juga memungkinkan aplikasi untuk mereferensikan paket NuGet yang juga mereferensikan SDK Edge WebView2. Untuk informasi selengkapnya, lihat Masalah GitHub #5689.

API Penyebaran Paket Baru

API Manajemen Paket telah menerima beberapa penyempurnaan termasuk Is*ReadyOrNewerAvailable*(), EnsureReadyOptions.RegisterNewerIfAvailable, Is*Provisioned*(), IsPackageRegistrationPending(), dan beberapa perbaikan bug. Lihat PackageManagement.md dan Permintaan Pull #4453 untuk detail selengkapnya.

Tab TabView yang disempurnakan merobek

TabView mendukung mode baru CanTearOutTabs yang memberikan pengalaman yang ditingkatkan untuk menyeret tab dan menyeret ke jendela baru. Ketika opsi baru ini diaktifkan, penyeretan tab sangat mirip dengan pengalaman seret tab di Edge dan Chrome di mana jendela baru segera dibuat selama seret, memungkinkan pengguna untuk menyeretnya ke tepi layar untuk memaksimalkan atau memposisikan jendela dalam satu gerakan halus. Implementasi ini juga tidak menggunakan API seret dan letakkan, sehingga tidak terpengaruh oleh batasan apa pun dalam API tersebut. Terutama, pemisah tab didukung dalam proses yang berjalan ditinggikan sebagai Administrator.

Perubahan penting lainnya

  • Kami menambahkan API baru ColorHelper.ToDisplayName() , mengisi kesenjangan itu dari UWP.
  • Menambahkan kelas baru Microsoft.Windows.Globalization.ApplicationLanguages , yang terutama menyertakan fitur baru PrimaryLanguageOverride . Untuk informasi selengkapnya, lihat Masalah GitHub #4523.
  • Tidak disegel ItemsWrapGrid. Ini harus menjadi perubahan yang kompatibel dengan mundur.
  • PipsPager mendukung mode baru di mana ia dapat membungkus antara item pertama dan daftar.
  • RatingControl sekarang lebih dapat disesuaikan, dengan memindahkan beberapa properti gaya yang dikodekan secara permanen ke sumber daya tema. Ini memungkinkan aplikasi untuk mengambil alih nilai-nilai ini untuk menyesuaikan tampilan RatingControl dengan lebih baik.

Masalah Umum

  • Jika debugger diatur untuk berhenti pada semua pengecualian C++, debugger akan putus pada sepasang pengecualian bising pada start-up dalam kode BCP47 (Globalisasi Windows).

Perbaikan Bug

  • Memperbaiki beberapa masalah sekeliling penanganan skenario titlebar kustom. Untuk informasi selengkapnya, lihat Masalah GitHub #7629, #9670, #9709 dan #8431.
  • Memperbaiki masalah di mana InfoBadge ikon tidak terlihat. Untuk informasi selengkapnya, lihat Masalah GitHub #8176.
  • Memperbaiki masalah dengan ikon kadang-kadang ditampilkan dalam posisi yang salah di CommandBarFlyout. Untuk informasi selengkapnya, lihat Masalah GitHub #9409.
  • Memperbaiki masalah dengan fokus keyboard di menu saat membuka atau menutup sub menu. Untuk informasi selengkapnya, lihat Masalah GitHub #9519.
  • Memperbaiki masalah dengan TreeView menggunakan status yang salah IsExpanded saat mendaur ulang item. Untuk informasi selengkapnya, lihat Masalah GitHub #9549.
  • Memperbaiki masalah saat menggunakan pengikatan ElementName di ItemsRepeater.ItemTemplate. Untuk informasi selengkapnya, lihat Masalah GitHub #9715.
  • Memperbaiki masalah dengan item pertama dalam posisi yang ItemsRepeater terkadang salah. Untuk informasi selengkapnya, lihat Masalah GitHub #9743.
  • Memperbaiki masalah dengan InputNonClientPointerSource terkadang melanggar input ke tombol min/maks/tutup. Untuk informasi selengkapnya, lihat Masalah GitHub #9749.
  • Memperbaiki kesalahan kompilasi saat menggunakan Microsoft.UI.Interop.h dengan clang-cl. Untuk informasi selengkapnya, lihat Masalah GitHub #9771.
  • Memperbaiki masalah di mana CharacterReceived peristiwa tidak berfungsi di/ComboBoxTextBox . Untuk informasi selengkapnya, lihat Masalah GitHub #9786.
  • Memperbaiki masalah dalam build 1.6-eksperimental di mana perilaku input pointer untuk CanTearOutTabs salah pada monitor dengan faktor skala yang berbeda dari 100%. Untuk informasi selengkapnya, lihat Masalah GitHub #9791.
  • Memperbaiki masalah dalam build 1.6-experimental2 di mana beberapa terjemahan bahasa memiliki masalah pengodean karakter untuk ColorHelper.ToDisplayName().
  • Memperbaiki masalah dari 1.6-eksperimental1 di mana NumberBox tidak menggunakan warna latar depan dan latar belakang yang benar. Untuk informasi selengkapnya, lihat Masalah GitHub #9714.
  • Memperbaiki masalah di mana peristiwa duplikat KeyUp dimunculkan untuk tombol panah dan tab. Untuk informasi selengkapnya, lihat Masalah GitHub #9399.
  • Memperbaiki masalah di mana PowerManager.SystemSuspendStatusChanged peristiwa tidak dapat digunakan untuk mendapatkan SystemSuspendStatus. Untuk informasi selengkapnya, lihat Masalah GitHub #2833.
  • Memperbaiki masalah di mana fokus keyboard awal tidak diberikan dengan benar pada WebView2 saat itu adalah satu-satunya kontrol di jendela.
  • Memperbaiki masalah saat menggunakan ExtendsContentIntoTitleBar=true tombol Min/Max/Close tidak muncul dengan benar di Automasi UI, yang mencegah Akses Suara menampilkan angka untuk tombol tersebut.
  • Memperbaiki masalah di mana aplikasi mungkin mengalami crash dalam pemeriksaan kunci karena masuknya kembali yang tidak terduga.
  • Memperbaiki masalah di mana Hyperlink warna tidak diperbarui dengan benar saat beralih ke tema kontras tinggi.
  • Memperbaiki masalah saat mengubah kumpulan ListView di jendela latar belakang mungkin salah memindahkan jendela tersebut ke latar depan dan mengambil fokus.
  • Memperbaiki masalah dari 1.6-experimental1 di mana pengaturan AcrylicBrush.TintLuminosityOpacity di .xaml dalam proyek pustaka kelas akan crash dengan kesalahan konversi jenis.
  • Memperbaiki masalah di mana panggilan ItemsRepeater.StartBringIntoView terkadang dapat menyebabkan item menghilang.
  • Memperbaiki masalah saat menyentuh dan menyeret pada Button dalam ScrollViewer akan membiarkannya dalam keadaan ditekan.
  • IntelliSense yang diperbarui, yang kehilangan informasi untuk banyak jenis dan anggota yang lebih baru.
  • Memperbaiki masalah saat mengklik di area ScrollViewer kosong akan selalu memindahkan fokus ke kontrol pertama yang dapat difokuskan di dan menggulir kontrol tersebut ScrollViewer ke tampilan. Untuk informasi selengkapnya, lihat Masalah GitHub #597.
  • Memperbaiki masalah di mana Window.Activated peristiwa terkadang diaktifkan beberapa kali. Untuk informasi selengkapnya, lihat Masalah GitHub #7343.
  • Memperbaiki masalah saat mengatur NavigationViewItem.IsSelected properti untuk true mencegah anak-anaknya ditampilkan saat diperluas. Untuk informasi selengkapnya, lihat Masalah GitHub #7930.
  • Memperbaiki masalah di mana MediaPlayerElement tidak akan menampilkan keterangan dengan benar dengan None atau DropShadow efek tepi. Untuk informasi selengkapnya, lihat Masalah GitHub #7981.
  • Memperbaiki masalah saat Flyout.ShowMode properti tidak digunakan saat menampilkan flyout. Untuk informasi selengkapnya, lihat Masalah GitHub #7987.
  • Memperbaiki masalah di mana NumberBox terkadang akan memiliki kesalahan pembulatan. Untuk informasi selengkapnya, lihat Masalah GitHub #8780.
  • Memperbaiki masalah saat menggunakan pustaka yang dikompilasi terhadap versi WinAppSDK yang lebih lama dapat mengalami kesalahan saat mencoba menemukan jenis atau properti. Untuk informasi selengkapnya, lihat Masalah GitHub #8810.
  • Memperbaiki masalah saat fokus keyboard awal tidak diatur saat meluncurkan jendela. Untuk informasi selengkapnya, lihat Masalah GitHub #8816.
  • Memperbaiki masalah di mana FlyoutShowMode.TransientWithDismissOnPointerMoveAway tidak berfungsi setelah pertama kali ditampilkan. Untuk informasi selengkapnya, lihat Masalah GitHub #8896.
  • Memperbaiki masalah di mana beberapa kontrol tidak mengikat Foreground templat dan Background properti dengan benar. Untuk informasi selengkapnya, lihat Masalah GitHub #7070, #9020, #9029, #9083 dan #9102.
  • Memperbaiki masalah di mana ThemeResourcedigunakan dalam VisualStateManager setter tidak akan diperbarui pada perubahan tema. Kontrol yang umumnya terpengaruh dalam flyout. Untuk informasi selengkapnya, lihat Masalah GitHub #9198.
  • Memperbaiki masalah di mana WebView akan kehilangan fokus utama, yang mengakibatkan peristiwa kabur/fokus ekstra dan masalah lainnya. Untuk informasi selengkapnya, lihat Masalah GitHub #9288.
  • Memperbaiki masalah di mana NavigationView dapat menampilkan kesalahan pengikatan dalam output debug. Untuk informasi selengkapnya, lihat Masalah GitHub #9384.
  • Memperbaiki masalah di mana file SVG yang mendefinisikan kotak tampilan negatif tidak lagi dirender. Untuk informasi selengkapnya, lihat Masalah GitHub #9415.
  • Memperbaiki masalah saat mengubah ItemsView.Layout orientasi menyebabkan item dihapus. Untuk informasi selengkapnya, lihat Masalah GitHub #9422.
  • Memperbaiki masalah saat menggulir banyak output debug yang ScrollView dihasilkan. Untuk informasi selengkapnya, lihat Masalah GitHub #9434.
  • Memperbaiki masalah di mana MapContorl.InteractiveControlsVisible tidak berfungsi dengan baik. Untuk informasi selengkapnya, lihat Masalah GitHub #9486.
  • Memperbaiki masalah di mana MapControl.MapElementClick peristiwa tidak diaktifkan dengan benar. Untuk informasi selengkapnya, lihat Masalah GitHub #9487.
  • Memperbaiki masalah di mana x:Bind tidak memeriksa null sebelum menggunakan referensi lemah, yang dapat mengakibatkan crash. Untuk informasi selengkapnya, lihat Masalah GitHub #9551.
  • Memperbaiki masalah saat mengubah TeachingTip.Target properti tidak memperbarui posisinya dengan benar. Untuk informasi selengkapnya, lihat Masalah GitHub #9553.
  • Memperbaiki masalah saat dropdown tidak merespons di WebView2. Untuk informasi selengkapnya, lihat Masalah GitHub #9566.
  • Memperbaiki kebocoran memori saat menggunakan GeometryGroup. Untuk informasi selengkapnya, lihat Masalah GitHub #9578.
  • Memperbaiki masalah di mana menggulir melalui sejumlah besar item dari ItemRepeater dalam ScrollView dapat menyebabkan bingkai render kosong. Untuk informasi selengkapnya, lihat Masalah GitHub #9643.
  • Memperbaiki masalah saat SceneVisual tidak berfungsi.

API baru di 1.6.0-preview1

Versi 1.6-preview1 menyertakan API baru berikut dibandingkan dengan rilis 1.5 stabil:

Microsoft.UI

    ColorHelper
        ToDisplayName
Microsoft.UI.Input

    EnteredMoveSizeEventArgs
    EnteringMoveSizeEventArgs
    ExitedMoveSizeEventArgs
    InputNonClientPointerSource
        EnteredMoveSize
        EnteringMoveSize
        ExitedMoveSize
        WindowRectChanged
        WindowRectChanging

    MoveSizeOperation
    WindowRectChangedEventArgs
    WindowRectChangingEventArgs
Microsoft.UI.Xaml

    XamlRoot
        CoordinateConverter
Microsoft.UI.Xaml.Automation.Peers

    ScrollPresenterAutomationPeer
Microsoft.UI.Xaml.Controls

    PipsPager
        WrapMode
        WrapModeProperty

    PipsPagerWrapMode
    TabView
        CanTearOutTabs
        CanTearOutTabsProperty
        ExternalTornOutTabsDropped
        ExternalTornOutTabsDropping
        TabTearOutRequested
        TabTearOutWindowRequested

    TabViewExternalTornOutTabsDroppedEventArgs
    TabViewExternalTornOutTabsDroppingEventArgs
    TabViewTabTearOutRequestedEventArgs
    TabViewTabTearOutWindowRequestedEventArgs
Microsoft.Windows.Globalization

    ApplicationLanguages
Microsoft.Windows.Management.Deployment

    EnsureReadyOptions
        RegisterNewerIfAvailable

    PackageDeploymentFeature
    PackageDeploymentManager
        IsPackageDeploymentFeatureSupported
        IsPackageProvisioned
        IsPackageProvisionedByUri
        IsPackageReadyOrNewerAvailable
        IsPackageReadyOrNewerAvailableByUri
        IsPackageSetProvisioned
        IsPackageSetReadyOrNewerAvailable

    PackageReadyOrNewerAvailableStatus
Microsoft.Windows.Storage

    ApplicationData
    ApplicationDataContainer
    ApplicationDataContract
    ApplicationDataCreateDisposition
    ApplicationDataLocality