HidInputReport 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.
Mewakili Laporan Input HID.
Perangkat mengeluarkan laporan input untuk menjelaskan perubahan status, input pengguna, dan data khusus perangkat lainnya. Misalnya, perangkat keyboard HID akan menggunakan laporan input untuk memberi sinyal tekan tombol. Sensor kehadiran HID akan menggunakan laporan input untuk memberi sinyal peristiwa deteksi kehadiran.
public ref class HidInputReport sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class HidInputReport final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class HidInputReport
Public NotInheritable Class HidInputReport
- Warisan
- Atribut
Persyaratan Windows
Rangkaian perangkat |
Windows 10 (diperkenalkan dalam 10.0.10240.0 - for Xbox, see UWP features that aren't yet supported on Xbox)
|
API contract |
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v1.0)
|
Keterangan
Contoh berikut menunjukkan bagaimana aplikasi UWP yang dibangun dengan XAML dan C# menggunakan metode GetInputReportAsync untuk mendapatkan laporan input.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Windows.Devices.Enumeration;
using Windows.Devices.HumanInterfaceDevice;
using Windows.Storage;
using Windows.Storage.Streams;
namespace HidSampleCS
{
class Vendor
{
private async void ReadWriteToHidDevice(HidDevice device)
{
if (device != null)
{
// construct a HID output report to send to the device
HidOutputReport outReport = device.CreateOutputReport();
/// Initialize the data buffer and fill it in
byte[] buffer = new byte[] { 10, 20, 30, 40 };
DataWriter dataWriter = new DataWriter();
dataWriter.WriteBytes(buffer);
outReport.Data = dataWriter.DetachBuffer();
// Send the output report asynchronously
await device.SendOutputReportAsync(outReport);
//
// Sent output report successfully
// Now lets try read an input report
//
HidInputReport inReport = await device.GetInputReportAsync();
if (inReport != null)
{
UInt16 id = inReport.Id;
var bytes = new byte[4];
DataReader dataReader = DataReader.FromBuffer(inReport.Data);
dataReader.ReadBytes(bytes);
}
else
{
this.NotifyUser("Invalid input report received");
}
}
else
{
this.NotifyUser("device is NULL");
}
}
}
}
Properti
ActivatedBooleanControls |
Mendapatkan kontrol Boolean yang saat ini diaktifkan untuk perangkat HID yang diberikan. |
Data |
Mendapatkan data yang terkait dengan laporan input tertentu. |
Id |
Mendapatkan pengidentifikasi yang terkait dengan laporan input tertentu. |
TransitionedBooleanControls |
Mendapatkan kontrol Boolean yang baru saja ditransisikan untuk perangkat HID yang diberikan. |
Metode
GetBooleanControl(UInt16, UInt16) |
Mengambil kontrol Boolean yang terkait dengan parameter usagePage dan usageId dan ditemukan dalam laporan input yang diberikan. |
GetBooleanControlByDescription(HidBooleanControlDescription) |
Mengambil kontrol Boolean yang dijelaskan oleh parameter controlDescription dan ditemukan dalam laporan input yang diberikan. |
GetNumericControl(UInt16, UInt16) |
Mengambil kontrol numerik yang terkait dengan parameter usagePage dan usageId dan ditemukan dalam laporan input yang diberikan. |
GetNumericControlByDescription(HidNumericControlDescription) |
Mengambil kontrol numerik yang dijelaskan oleh parameter controlDescription dan ditemukan dalam laporan input yang diberikan. |