Menyematkan petak sekunder dari aplikasi desktop
Aplikasi desktop seperti aplikasi WinUI 3 (menggunakan SDK Aplikasi Windows), atau aplikasi Windows Presentation Foundation (WPF) atau Formulir Windows (WinForms), dapat menyematkan petak peta sekunder dengan menggunakan aplikasi paket (lihat Membangun paket MSIX dari kode Anda). Ini sebelumnya dikenal sebagai Desktop Bridge.
Penting
Memerlukan Pembaruan Fall Creators: Anda harus menargetkan SDK 16299 dan menjalankan build 16299 atau yang lebih baru untuk menyematkan petak sekunder dari aplikasi Desktop Bridge.
Menambahkan petak peta sekunder dari aplikasi SDK Aplikasi Windows, WPF, atau WinForms Sangat mirip dengan aplikasi UWP murni. Satu-satunya perbedaan adalah Anda harus menentukan handel jendela utama (HWND). Ini karena ketika menyematkan petak peta, Windows menampilkan dialog modal yang meminta pengguna untuk mengonfirmasi apakah mereka ingin menyematkan petak. Jika aplikasi desktop tidak mengonfigurasi objek SecondaryTile dengan jendela pemilik, maka Windows tidak tahu di mana menggambar dialog, dan operasi akan gagal.
Mengemas aplikasi Anda
Jika Anda membuat aplikasi SDK Aplikasi Windows dengan WinUI 3, Anda harus menggunakan aplikasi paket untuk menyematkan petak sekunder. Tidak ada langkah tambahan yang diperlukan untuk mengemas aplikasi jika Anda mulai dengan templat aplikasi yang dipaketkan.
Jika Anda menggunakan WPF atau WinForms, dan Belum mengemas aplikasi dengan Desktop Bridge, Anda harus melakukannya sebelum dapat menggunakan API Windows Runtime apa pun (lihat Membangun paket MSIX dari kode Anda).
Menginisialisasi dan menyematkan petak sekunder menggunakan antarmuka IInitializeWithWindow
Catatan
Bagian ini untuk WinUI 3; dan untuk WPF/WinForms dengan .NET 6 atau yang lebih baru.
Dalam file proyek, atur properti TargetFramework ke nilai yang memberi Anda akses ke WINDOWS Runtime API (lihat .NET 6 dan yang lebih baru: Gunakan opsi Target Framework Moniker). Itu termasuk akses ke namespace WinRT.Interop (lihat Memanggil API interop dari aplikasi .NET). Contohnya:
<PropertyGroup> <!-- You can also target other versions of the Windows SDK and .NET; for example, "net6.0-windows10.0.19041.0" --> <TargetFramework>net6.0-windows10.0.22000.0</TargetFramework> </PropertyGroup>
Inisialisasi objek petak peta sekunder baru persis seperti yang Anda lakukan dengan aplikasi UWP normal. Untuk mempelajari selengkapnya tentang membuat dan menyematkan petak sekunder, lihat Menyematkan petak sekunder.
// Initialize the tile with required arguments var tile = new Windows.UI.StartScreen.SecondaryTile( "myTileId5391", "Display name", "myActivationArgs", new Uri("ms-appx:///Assets/Square150x150Logo.png"), TileSize.Default);
Ambil handel jendela, dan inisialisasi objek petak sekunder dengan handel tersebut. Dalam kode di bawah ini,
this
adalah referensi ke objek Window (baik jendela WinUI 3, jendela WPF, atau jendela WinForms). Untuk informasi selengkapnya, lihat Mengambil handel jendela (HWND) dan menampilkan objek UI WinRT yang bergantung pada CoreWindow.var hWnd = WinRT.Interop.WindowNative.GetWindowHandle(this); WinRT.Interop.InitializeWithWindow.Initialize(tile, hWnd);
Terakhir, minta untuk menyematkan petak peta seperti yang Anda lakukan di aplikasi UWP normal.
// Pin the tile bool isPinned = await tile.RequestCreateAsync(); // Here, update UI to reflect whether user can now either unpin or pin
Mengirim pemberitahuan petak peta
Penting
Memerlukan April 2018 versi 17134.81 atau yang lebih baru: Anda harus menjalankan build 17134.81 atau yang lebih baru untuk mengirim petak peta atau pemberitahuan lencana ke petak sekunder dari aplikasi Desktop Bridge. Sebelum pembaruan layanan .81 ini, pengecualian 0x80070490 Element tidak ditemukan akan terjadi saat mengirim petak peta atau pemberitahuan lencana ke petak sekunder dari aplikasi Desktop Bridge.
Mengirim pemberitahuan petak atau lencana sama dengan aplikasi UWP. Lihat Mengirim pemberitahuan petak peta lokal untuk memulai.
Sumber
Windows developer
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk