Freigeben über


LightSensor Klasse

Definition

Stellt einen Umgebungslichtsensor dar, der den Umgebungslichtwert als LUX-Wert bereitstellt.

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
Vererbung
Object Platform::Object IInspectable LightSensor
Attribute

Windows-Anforderungen

Gerätefamilie
Windows 10 (eingeführt in 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (eingeführt in v1.0)

Beispiele

Eine Beispielimplementierung finden Sie im Beispiel des Lichtsensors.

Hinweise

Im folgenden Beispiel wird veranschaulicht, wie eine mit XAML und C# erstellte UWP-App die GetDefault-Methode verwendet, um eine Verbindung mit einem Lichtsensor herzustellen. Wenn kein integrierter Lichtsensor gefunden wird, gibt die Methode einen NULL-Wert zurück.

_sensor = LightSensor.GetDefault();

Im folgenden Beispiel wird veranschaulicht, wie eine mit XAML erstellte UWP-App einen ReadingChanged-Ereignishandler registriert.

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);
    }
}

Das folgende Beispiel zeigt den ReadingChanged-Ereignishandler .

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);
    });
}

Versionsverlauf

Windows-Version SDK-Version Mehrwert
1709 16299 FromIdAsync
1709 16299 GetDeviceSelector
1709 16299 MaxBatchSize
1709 16299 ReportLatency
2004 19041 ReportThreshold

Eigenschaften

DeviceId

Ruft den Gerätebezeichner ab.

MaxBatchSize

Ruft die maximale Anzahl von Ereignissen ab, die vom Sensor in einem Batch verarbeitet werden können.

MinimumReportInterval

Ruft das minimale Berichtsintervall ab, das vom Sensor unterstützt wird.

ReportInterval

Ruft das aktuelle Berichtsintervall für den Umgebungslichtsensor ab oder legt es fest.

ReportLatency

Ruft die Verzögerung zwischen Batches von Sensorinformationen ab oder legt sie fest.

ReportThreshold

Ruft lightSensorDataThreshold für den Lichtsensor ab.

Methoden

FromIdAsync(String)

Ruft den Sensor asynchron aus seinem Bezeichner ab.

GetCurrentReading()

Ruft den aktuellen Umgebungslichtsensorwert ab.

GetDefault()

Gibt den Standardmäßigen Umgebungslichtsensor zurück.

GetDeviceSelector()

Ruft die Geräteauswahl ab.

Ereignisse

ReadingChanged

Tritt jedes Mal auf, wenn der Umgebungslichtsensor einen neuen Sensorwert meldet.

Gilt für:

Weitere Informationen