Memahami Perintah dan Kontrol
Pemisahan logika dari presentasi adalah filosofi desain yang menginspirasi sistem presentasi perintah kerangka kerja Windows Ribbon—sistem yang didasarkan pada pola desain di mana fungsionalitas dan perilaku diimplementasikan secara independen dari kontrol yang mengekspos fungsionalitas ini.
Pengantar
Artikel ini membahas desain sistem perintah kerangka kerja Pita. Ini menjelaskan konsep Perintah dan kontrol dan mengeksplorasi bagaimana mereka bekerja sama untuk memberikan pengalaman perintah yang kaya dengan sejumlah kemampuan UI baru.
Sistem Perintah Pita Windows
Dalam kerangka kerja Pita, Perintah dan kontrol adalah entitas independen. Perintah adalah struktur abstrak, tanpa batasan presentasi, yang mewakili tugas atau kelas fungsionalitas tertentu. Kontrol, di sisi lain, adalah objek konkret yang mengekspos fungsionalitas Perintah melalui UI Pita.
Perbedaan ini memberikan kemampuan untuk menentukan Perintah yang bebas dari detail UI dan dapat mengeksekusi niat tindakan tanpa perlu mengelola bagaimana tindakan dipanggil.
Kontrol
Kontrol adalah objek UI yang diperlukan untuk presentasi Perintah. Mereka dirender dan dikelola pada durasi oleh kerangka kerja berdasarkan interaksi pengguna dan serangkaian properti dan perilaku yang melekat.
Dikenal sebagai tata letak adaptif, fleksibilitas UI yang dikelola kerangka kerja adalah salah satu kekuatan besar Pita. Kontrol pita dapat secara otomatis mengonfigurasi ulang diri mereka sendiri melalui templat tata letak yang bergantung pada kerangka kerja atau yang ditentukan pengembang yang dapat merespons berbagai persyaratan durasi, semuanya tanpa menulis satu baris kode presentasi. Untuk informasi selengkapnya, lihat Menyesuaikan Pita Melalui Definisi Ukuran dan Kebijakan Penskalaan.
Selain manfaat tata letak adaptif, sejumlah kontrol Pita kompleks menyediakan solusi mandiri untuk ruang masalah UI tertentu. Dengan menawarkan model interaksi canggih, kontrol Pita, seperti FontControl atau ColorPicker, menyediakan kemampuan untuk memanipulasi data dalam istilah yang lebih abstrak melalui tas properti atribut font atau warna aktual daripada melalui berbagai subkontrol, enumerasi, dan nilai indeks kontrol Windows standar.
Perintah
Digabungkan secara longgar ke kontrol Pita yang mengekspos fungsionalitasnya, Implementasi perintah adalah domain aplikasi host dan mengambil bentuk pendengar peristiwa, Penangan perintah, dan berbagai properti Perintah.
Perintah dideklarasikan dalam markup Pita dengan ID unik, atau diberi ID yang dihasilkan pengkompilasi markup pada kompilasi. Perintah dikaitkan dengan kontrol melalui nama Perintah tetapi, tidak seperti kontrol, fungsionalitas aktualnya didefinisikan dalam kode di mana mereka terikat ke penangan Perintah tertentu melalui ID Perintah.
Catatan
Pada kompilasi, ID ini disimpan dalam file header definisi ID yang mengekspos Perintah ke penangan Perintah terkait di aplikasi host Pita.
Setiap Perintah memiliki jenis Perintah yang mendasar yang di-item dalam enumerasi UI_COMMANDTYPE .
Pengalaman perintah dalam tindakan
Kemampuan model perintah ini ditunjukkan oleh Toolbar Akses Cepat Pita (QAT). QAT memberi pengguna akhir cara untuk dengan mudah menentukan pintasan mereka sendiri untuk hampir semua kontrol di UI Pita. Pintasan ditambahkan secara dinamis ke QAT pada durasi saat pengguna mengklik kanan kontrol Pita dan memilih Tambahkan ke Toolbar Akses Cepat dari menu konteks.
Gambar berikut ini memperlihatkan Tempel dan Tempel dari Perintah, diwakili oleh kontrol SplitButton , di Pita Windows 7 Paint.
Gambar berikut ini memperlihatkan Tempel dan Tempel yang sama dari Perintah, masih diwakili oleh kontrol SplitButton , di QAT Pita Windows 7 Paint.
Ketika kontrol dihosting oleh QAT, instans kontrol baru mempertahankan semua fungsionalitas kontrol asli tanpa perlu pendengar peristiwa tambahan dan penangan perintah untuk mendukungnya. Kedua kontrol terikat ke penangan Perintah Pita yang sama melalui pengidentifikasi Perintah bersama. Dengan cara ini, kerangka kerja memperlakukan kedua kontrol sebagai satu, apa pun yang dipanggil.
Catatan
Manfaat yang sama diwujudkan ketika Perintah dimasukkan ke dalam ContextPopup pada waktu desain. Dalam hal ini, penangan Tempel Perintah dapat digunakan apakah kontrol SplitButton muncul di Pita, QAT, atau ContextPopup.
Topik terkait
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