Freigeben über


LightSensor.ReadingChanged Ereignis

Definition

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

// Register
event_token ReadingChanged(TypedEventHandler<LightSensor, LightSensorReadingChangedEventArgs const&> const& handler) const;

// Revoke with event_token
void ReadingChanged(event_token const* cookie) const;

// Revoke with event_revoker
LightSensor::ReadingChanged_revoker ReadingChanged(auto_revoke_t, TypedEventHandler<LightSensor, LightSensorReadingChangedEventArgs const&> const& handler) const;
public event TypedEventHandler<LightSensor,LightSensorReadingChangedEventArgs> ReadingChanged;
function onReadingChanged(eventArgs) { /* Your code */ }
lightSensor.addEventListener("readingchanged", onReadingChanged);
lightSensor.removeEventListener("readingchanged", onReadingChanged);
- or -
lightSensor.onreadingchanged = onReadingChanged;
Public Custom Event ReadingChanged As TypedEventHandler(Of LightSensor, LightSensorReadingChangedEventArgs) 

Ereignistyp

Beispiele

Im folgenden Beispiel wird veranschaulicht, wie eine mit C# und XAML erstellte UWP-App ihren 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);
    });
}

Hinweise

Eine Anwendung kann diesen Ereignishandler registrieren, um Sensormesswerte abzurufen. Die Anwendung muss einen gewünschten ReportInterval einrichten. Dadurch wird der Sensortreiber darüber informiert, dass Ressourcen zugewiesen werden sollten, um die Anforderungen der Anwendung zu erfüllen.

Anwendungen können die Häufigkeit dieses Ereignisses festlegen, indem sie die ReportInterval-Eigenschaft festlegen.

Gilt für: