InputObject Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Kelas dasar untuk semua objek input.
[WebHostHidden]
public ref class InputObject
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.Foundation.WindowsAppSDKContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[WebHostHidden]
class InputObject
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.Foundation.WindowsAppSDKContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class InputObject
Public Class InputObject
- Warisan
- Turunan
- Atribut
Keterangan
Semua API input dalam SDK Aplikasi Windows berasal dari kelas dasar InputObject umum.
Model threading InputObject
InputObject hanya dapat diakses dari utas tempat input tersebut dibuat. Setiap akses properti atau panggilan fungsi pada utas yang berbeda akan mengembalikan RPC_E_WRONG_THREAD (atau jenis kesalahan yang diproyeksikan yang setara). Satu-satunya pengecualian untuk ini adalah saat mengakses properti InputObject DispatcherQueue . DispatcherQueue memungkinkan Anda memeriksa apakah utas saat ini memiliki akses dan, jika tidak, untuk mengantre bekerja ke utas affined.
Semua panggilan balik peristiwa dinaikkan pada utas DispatcherQueue yang terkait dengan InputObject.
Contoh berikut menunjukkan cara menentukan apakah InputObject milik utas saat ini.
bool OnThread(Microsoft.UI.Input.InputObject inputObject)
{
return inputObject.DispatcherQueue.HasThreadAccess();
}
Perilaku saat dibuang
Saat InputObject dibuang, semua penanganan aktivitas terkait tidak terdaftar secara otomatis. Panggilan berikutnya untuk membatalkan pendaftaran penanganan aktivitas akan berhasil tetapi tidak diperlukan.
Semua panggilan fungsi atau properti berikutnya, termasuk properti DispatcherQueue, akan mengembalikan RO_E_CLOSED (atau kesalahan yang diproyeksikan yang setara).
Catatan
Memori InputObject tetap valid sampai semua referensi telah dirilis, tetapi semua sumber daya dirilis saat dibuang.
Properti
DispatcherQueue |
Mendapatkan DispatcherQueue untuk InputObject. |
Berlaku untuk
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