Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Kode yang dihasilkan siap untuk ditinjau, tidak secara otomatis siap dikirim. Dalam langkah terakhir ini, Anda berlatih mendeteksi kesalahan kerangka kerja yang masuk akal dan memverifikasi Task Tally di luar kompilasi.
Sengaja menguji asisten
Mulai percakapan baru dengan asisten Anda sehingga tidak bergantung pada batasan dari perintah sebelumnya. Bertanya:
Add a confirmation dialog before deleting a task from my Windows XAML app.
Show only the using directives and the dialog construction code.
Asisten tanpa batasan mungkin menjawab:
using Windows.UI.Xaml.Controls;
var dialog = new ContentDialog
{
Title = "Delete task?",
PrimaryButtonText = "Delete",
CloseButtonText = "Cancel"
};
Ini adalah namespace UWP.
ContentDialog juga ada di WinUI 3, sehingga kesalahan tersebut mudah terlewat saat peninjauan kode.
Untuk proyek ini, namespace harus:
using Microsoft.UI.Xaml.Controls;
var dialog = new ContentDialog
{
Title = "Delete task?",
PrimaryButtonText = "Delete",
CloseButtonText = "Cancel",
XamlRoot = this.XamlRoot
};
URL referensi WinUI 3 ContentDialog mencakup microsoft.ui.xaml.controls. Referensi ContentDialog UWP menggunakan windows.ui.xaml.controls.
Inilah alasan mengapa "tipe tersebut tercantum dalam dokumentasi Windows" tidaklah cukup. Periksa kerangka kerja, namespace, versi, dan model aplikasi.
Menggunakan pemeriksaan kerangka kerja untuk kode yang dihasilkan
Saat asisten menambahkan API Windows, periksa dengan pertanyaan-pertanyaan berikut:
| Periksa | Apa yang harus dicari |
|---|---|
| Kerangka kerja | Apakah dokumentasi untuk WinUI 3 dan SDK Aplikasi Windows? |
| Namespace | Apakah kode UI menggunakan Microsoft.UI.Xaml, bukan Windows.UI.Xaml atau System.Windows? |
| Versi | Apakah API tersedia dalam versi SDK Aplikasi Windows yang dirujuk oleh proyek? |
| Model aplikasi | Apakah API memerlukan identitas paket, kemampuan aplikasi, atau inisialisasi jendela? |
| Threading | Haruskah panggilan berjalan pada utas UI? Apakah pekerjaan asinkron ditunggu? |
| UX | Apakah ada kontrol atau pola WinUI bawaan untuk skenario? |
| Aksesibilitas | Apakah UI yang dihasilkan memiliki nama, label, akses keyboard, dan fokus yang terlihat? |
| Evidence | Apakah Anda sudah melakukan build, menjalankan, dan menguji jalur kode yang diubah? |
Minta asisten untuk memberikan URL Learn yang mendukung pilihannya, lalu buka URL sendiri.
Verifikasi Task Tally
Lakukan satu putaran verifikasi terakhir:
- Hapus data lokal aplikasi atau mulai dengan penginstalan baru. Pastikan bahwa keadaan kosong muncul dan bahwa jika hanya memasukkan spasi, Tambahkan tugas tetap dinonaktifkan.
- Tambahkan beberapa tugas, tandai satu selesai, dan hapus tugas lainnya. Pastikan bahwa jumlah yang tersisa diperbarui dan item yang benar dihapus.
- Mulai ulang aplikasi. Konfirmasikan bahwa judul tugas dan status penyelesaian dipulihkan.
- Tambahkan
if (System.Diagnostics.Debugger.IsAttached) throw new IOException("Test save failure.");sebagai barisTaskStorage.SaveAsyncpertama , bangun ulang, dan jalankan aplikasi di debugger. Lakukan penyimpanan dan pastikan bahwaInfoBarmelaporkan kegagalan, bukan penyimpanan yang berhasil. Kemudian hapus kondisi sementara dan bangun kembali. - Navigasikan melalui setiap elemen interaktif dengan Tab dan Shift+Tab.
- Gunakan pembaca layar atau Accessibility Insights for Windows untuk memeriksa nama, peran, dan urutan fokus.
- Ubah ukuran aplikasi, uji tema terang, gelap, dan kontras, lalu kompilasikan untuk x64 tanpa peringatan dari kompiler, XAML, binding, maupun analyzer.
Pelajari selengkapnya: Gambaran umum aksesibilitas dan Pengujian aksesibilitas.
Sempurnakan prompt, bukan hanya kode
Jika pemeriksaan gagal, simpan baik koreksi maupun alasannya dalam prompt berikutnya:
The generated code used Windows.UI.Xaml.Controls, which is the UWP
namespace. This project is WinUI 3. Replace it with the corresponding
Microsoft.UI.Xaml API, verify the API in the Windows App SDK reference,
build the x64 project, and explain why the original namespace was wrong.
Ini memberi asisten bukti yang berguna dan memperkuat batas proyek. Untuk proyek yang berumur lebih lama, letakkan batasan yang stabil seperti kerangka kerja, model pengemasan, arsitektur target, dan perintah build dalam instruksi repositori yang dibaca asisten pengodean Anda.
Langkah berikutnya
Anda telah membangun aplikasi WinUI 3 kecil dan mempraktikkan alur kerja yang dapat Anda gunakan kembali:
Tanya → Hasilkan → Bangun → Periksa → Verifikasi → Sempurnakan
Lanjutkan dengan:
- Buat aplikasi WinUI pertama Anda untuk pengenalan deterministik yang berfokus pada kode untuk XAML, navigasi, dan penyimpanan file.
- Pengikatan data, injeksi dependensi, dan pengujian unit di WinUI untuk arsitektur MVVM yang lebih besar.
- Galeri WinUI 3 untuk memverifikasi kontrol dan pola interaksi dalam sampel yang sedang berjalan.
- SDK Aplikasi Windows referensi API untuk mengonfirmasi pilihan API yang dihasilkan.
Windows developer