Condividi tramite


LightSensor Classe

Definizione

Rappresenta un sensore di luce ambientale che fornisce la lettura della luce ambientale come valore 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
Ereditarietà
Object Platform::Object IInspectable LightSensor
Attributi

Requisiti Windows

Famiglia di dispositivi
Windows 10 (è stato introdotto in 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (è stato introdotto in v1.0)

Esempio

Per un'implementazione di esempio, vedere l'esempio di sensore di luce.

Commenti

Nell'esempio seguente viene illustrato come un'app UWP compilata con XAML e C# usa il metodo GetDefault per stabilire una connessione a un sensore di luce. Se non viene trovato alcun sensore di luce integrato, il metodo restituirà un valore Null.

_sensor = LightSensor.GetDefault();

Nell'esempio seguente viene illustrato come un'app UWP compilata con XAML registra un gestore eventi 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);
    }
}

Nell'esempio seguente viene illustrato il gestore eventi 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);
    });
}

Cronologia delle versioni

Versione di Windows Versione dell'SDK Valore aggiunto
1709 16299 FromIdAsync
1709 16299 GetDeviceSelector
1709 16299 MaxBatchSize
1709 16299 ReportLatenza
2004 19041 ReportThreshold

Proprietà

DeviceId

Ottiene l'identificatore del dispositivo.

MaxBatchSize

Ottiene il numero massimo di eventi che possono essere batch dal sensore.

MinimumReportInterval

Ottiene l'intervallo minimo di report supportato dal sensore.

ReportInterval

Ottiene o imposta l'intervallo di report corrente per il sensore di luce ambientale.

ReportLatency

Ottiene o imposta il ritardo tra batch di informazioni sul sensore.

ReportThreshold

Ottiene lightSensorDataThreshold per il sensore di luce.

Metodi

FromIdAsync(String)

Ottiene in modo asincrono il sensore dal relativo identificatore.

GetCurrentReading()

Ottiene la lettura corrente del sensore di luce ambientale.

GetDefault()

Restituisce il sensore di luce ambientale predefinito.

GetDeviceSelector()

Ottiene il selettore del dispositivo.

Eventi

ReadingChanged

Si verifica ogni volta che il sensore di luce ambientale segnala una nuova lettura del sensore.

Si applica a

Vedi anche