LightSensor 类

定义

表示环境光传感器,该传感器将环境光读数作为 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
继承
Object Platform::Object IInspectable LightSensor
属性

Windows 要求

设备系列
Windows 10 (在 10.0.10240.0 中引入)
API contract
Windows.Foundation.UniversalApiContract (在 v1.0 中引入)

示例

有关实现的示例,请参阅光传感器示例

注解

以下示例演示了使用 XAML 和 C# 生成的 UWP 应用如何使用 GetDefault 方法与光线传感器建立连接。 如果未找到集成光传感器,该方法将返回 null 值。

_sensor = LightSensor.GetDefault();

以下示例演示使用 XAML 生成的 UWP 应用如何注册 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);
    }
}

以下示例演示 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);
    });
}

版本历史记录

Windows 版本 SDK 版本 已添加值
1709 16299 FromIdAsync
1709 16299 GetDeviceSelector
1709 16299 MaxBatchSize
1709 16299 ReportLatency
2004 19041 ReportThreshold

属性

DeviceId

获取设备标识符。

MaxBatchSize

获取传感器可以批处理的最大事件数。

MinimumReportInterval

获取传感器支持的最小报告间隔。

ReportInterval

获取或设置环境光传感器的当前报告间隔。

ReportLatency

获取或设置传感器信息批次之间的延迟。

ReportThreshold

获取光传感器的 LightSensorDataThreshold

方法

FromIdAsync(String)

从传感器标识符异步获取传感器。

GetCurrentReading()

获取当前环境光传感器读数。

GetDefault()

返回默认的环境光传感器。

GetDeviceSelector()

获取设备选择器。

事件

ReadingChanged

每次环境光传感器报告新的传感器读数时发生。

适用于

另请参阅