Bagikan melalui


LightSensor Kelas

Definisi

Mewakili sensor cahaya sekitar yang menyediakan pembacaan cahaya sekitar sebagai nilai LUX.

public ref class LightSensor sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class LightSensor final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class LightSensor
Public NotInheritable Class LightSensor
Warisan
Object Platform::Object IInspectable LightSensor
Atribut

Persyaratan Windows

Rangkaian perangkat
Windows 10 (diperkenalkan dalam 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v1.0)

Contoh

Untuk contoh implementasi, lihat sampel sensor cahaya.

Keterangan

Contoh berikut menunjukkan bagaimana aplikasi UWP yang dibangun dengan XAML dan C# menggunakan metode GetDefault untuk membuat koneksi ke sensor cahaya. Jika tidak ada sensor cahaya terintegrasi yang ditemukan, metode akan mengembalikan nilai null.

_sensor = LightSensor.GetDefault();

Contoh berikut menunjukkan bagaimana aplikasi UWP yang dibangun dengan XAML mendaftarkan penanganan aktivitas ReadingChanged .

private void ScenarioEnable(object sender, RoutedEventArgs e)
{
    if (_sensor != null)
    {
        // Establish the report interval
        _sensor.ReportInterval = _desiredReportInterval;

        Window.Current.VisibilityChanged += new WindowVisibilityChangedEventHandler(VisibilityChanged);
        _sensor.ReadingChanged += new TypedEventHandler<LightSensor, LightSensorReadingChangedEventArgs>(ReadingChanged);

        ScenarioEnableButton.IsEnabled = false;
        ScenarioDisableButton.IsEnabled = true;
    }
    else
    {
        rootPage.NotifyUser("No light sensor found", NotifyType.StatusMessage);
    }
}

Contoh berikut menunjukkan penanganan aktivitas ReadingChanged .

async private void ReadingChanged(object sender, LightSensorReadingChangedEventArgs e)
{
    await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
    {
        LightSensorReading reading = e.Reading;
        ScenarioOutput_LUX.Text = String.Format("{0,5:0.00}", reading.IlluminanceInLux);
    });
}

Riwayat versi

Versi Windows Versi SDK Nilai ditambahkan
1709 16299 FromIdAsync
1709 16299 GetDeviceSelector
1709 16299 MaxBatchSize
1709 16299 Latensi Laporan
2004 19041 ReportThreshold

Properti

DeviceId

Mendapatkan pengidentifikasi perangkat.

MaxBatchSize

Mendapatkan jumlah maksimum peristiwa yang dapat di-batch oleh sensor.

MinimumReportInterval

Mendapatkan interval laporan minimum yang didukung oleh sensor.

ReportInterval

Mendapatkan atau mengatur interval laporan saat ini untuk sensor cahaya sekitar.

ReportLatency

Mendapatkan atau mengatur penundaan antara batch informasi sensor.

ReportThreshold

Mendapatkan LightSensorDataThreshold untuk sensor cahaya.

Metode

FromIdAsync(String)

Secara asinkron mendapatkan sensor dari pengidentifikasinya.

GetCurrentReading()

Mendapatkan pembacaan sensor cahaya sekitar saat ini.

GetDefault()

Mengembalikan sensor cahaya sekitar default.

GetDeviceSelector()

Mendapatkan pemilih perangkat.

Acara

ReadingChanged

Terjadi setiap kali sensor cahaya sekitar melaporkan pembacaan sensor baru.

Berlaku untuk

Lihat juga