Partager via


LightSensor Classe

Définition

Représente un capteur de lumière ambiante qui fournit la lecture de la lumière ambiante sous forme de valeur 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
Héritage
Object Platform::Object IInspectable LightSensor
Attributs

Configuration requise pour Windows

Famille d’appareils
Windows 10 (introduit dans 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduit dans v1.0)

Exemples

Pour obtenir un exemple d’implémentation, consultez l’exemple de capteur de lumière.

Remarques

L’exemple suivant montre comment une application UWP créée avec XAML et C# utilise la méthode GetDefault pour établir une connexion à un capteur de lumière. Si aucun capteur de lumière intégré n’est trouvé, la méthode retourne une valeur null.

_sensor = LightSensor.GetDefault();

L’exemple suivant montre comment une application UWP créée avec XAML inscrit un gestionnaire d’événements 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);
    }
}

L’exemple suivant montre le gestionnaire d’événements 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);
    });
}

Historique des versions

Version de Windows Version du SDK Valeur ajoutée
1709 16299 FromIdAsync
1709 16299 GetDeviceSelector
1709 16299 MaxBatchSize
1709 16299 ReportLatency
2004 19041 ReportThreshold

Propriétés

DeviceId

Obtient l’identificateur de l’appareil.

MaxBatchSize

Obtient le nombre maximal d’événements pouvant être traités par lot par le capteur.

MinimumReportInterval

Obtient l’intervalle de rapport minimal pris en charge par le capteur.

ReportInterval

Obtient ou définit l’intervalle de rapport actuel pour le capteur de lumière ambiante.

ReportLatency

Obtient ou définit le délai entre les lots d’informations du capteur.

ReportThreshold

Obtient la valeur LightSensorDataThreshold pour le capteur de lumière.

Méthodes

FromIdAsync(String)

Obtient de manière asynchrone le capteur à partir de son identificateur.

GetCurrentReading()

Obtient la lecture actuelle du capteur de lumière ambiante.

GetDefault()

Retourne le capteur de lumière ambiante par défaut.

GetDeviceSelector()

Obtient le sélecteur d’appareil.

Événements

ReadingChanged

Se produit chaque fois que le capteur de lumière ambiante signale une nouvelle lecture de capteur.

S’applique à

Voir aussi