Partilhar via


LightSensor Classe

Definição

Representa um sensor de luz ambiente que fornece a leitura de luz ambiente como um valor 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
Herança
Object Platform::Object IInspectable LightSensor
Atributos

Requisitos do Windows

Família de dispositivos
Windows 10 (introduzida na 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduzida na v1.0)

Exemplos

Para obter um exemplo de implementação, consulte o exemplo de sensor de luz.

Comentários

O exemplo a seguir demonstra como um aplicativo UWP criado com XAML e C# usa o método GetDefault para estabelecer uma conexão com um sensor de luz. Se nenhum sensor de luz integrado for encontrado, o método retornará um valor nulo.

_sensor = LightSensor.GetDefault();

O exemplo a seguir demonstra como um aplicativo UWP criado com XAML registra um manipulador de eventos 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);
    }
}

O exemplo a seguir mostra o manipulador de eventos 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);
    });
}

Histórico de versão

Versão do Windows Versão do SDK Valor adicionado
1.709 16299 FromIdAsync
1.709 16299 GetDeviceSelector
1.709 16299 MaxBatchSize
1.709 16299 ReportLatency
2004 19041 ReportThreshold

Propriedades

DeviceId

Obtém o identificador do dispositivo.

MaxBatchSize

Obtém o número máximo de eventos que podem ser agrupados em lote pelo sensor.

MinimumReportInterval

Obtém o intervalo mínimo de relatório com suporte pelo sensor.

ReportInterval

Obtém ou define o intervalo de relatório atual para o sensor de luz ambiente.

ReportLatency

Obtém ou define o atraso entre lotes de informações do sensor.

ReportThreshold

Obtém o LightSensorDataThreshold para o sensor de luz.

Métodos

FromIdAsync(String)

Obtém de forma assíncrona o sensor de seu identificador.

GetCurrentReading()

Obtém a leitura atual do sensor de luz ambiente.

GetDefault()

Retorna o sensor de luz ambiente padrão.

GetDeviceSelector()

Obtém o seletor de dispositivo.

Eventos

ReadingChanged

Ocorre sempre que o sensor de luz ambiente relata uma nova leitura do sensor.

Aplica-se a

Confira também