Partager via


SimpleOrientationSensor Classe

Définition

Représente un capteur d’orientation simple.

Pour obtenir un exemple d’implémentation, consultez l’exemple de capteur d’orientation simple.

Ce capteur détecte l’orientation actuelle du quadrant de l’appareil spécifié, ainsi que son status face vers le haut ou face vers le bas.

public ref class SimpleOrientationSensor 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 SimpleOrientationSensor 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 SimpleOrientationSensor
Public NotInheritable Class SimpleOrientationSensor
Héritage
Object Platform::Object IInspectable SimpleOrientationSensor
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)

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 d’orientation simple. Si aucun capteur d’orientation simple n’est trouvé, la méthode retourne une valeur null.

_sensor = SimpleOrientationSensor.GetDefault();

L’exemple suivant montre comment une application UWP créée avec XAML inscrit un gestionnaire d’événements OrientationChanged .

private void ScenarioEnable(object sender, RoutedEventArgs e)
{
    if (_sensor != null)
    {
        Window.Current.VisibilityChanged += new WindowVisibilityChangedEventHandler(VisibilityChanged);
        _sensor.OrientationChanged += new TypedEventHandler<SimpleOrientationSensor, SimpleOrientationSensorOrientationChangedEventArgs>(OrientationChanged);

        ScenarioEnableButton.IsEnabled = false;
        ScenarioDisableButton.IsEnabled = true;

        // Display the current orientation once while waiting for the next orientation change
        DisplayOrientation(ScenarioOutput_Orientation, _sensor.GetCurrentOrientation());
    }
    else
    {
        rootPage.NotifyUser("No simple orientation sensor found", NotifyType.StatusMessage);
    }
}

L’exemple suivant contient le code XAML du gestionnaire d’événements qui écrit les lectures d’orientation dans le formulaire de l’application.

async private void OrientationChanged(object sender, SimpleOrientationSensorOrientationChangedEventArgs e)
{
    await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
    {
        DisplayOrientation(ScenarioOutput_Orientation, e.Orientation);
    });
}
private void DisplayOrientation(TextBlock tb, SimpleOrientation orientation)
{
    switch (orientation)
    {
        case SimpleOrientation.NotRotated:
            tb.Text = "Not Rotated";
            break;
        case SimpleOrientation.Rotated90DegreesCounterclockwise:
            tb.Text = "Rotated 90 Degrees Counterclockwise";
            break;
        case SimpleOrientation.Rotated180DegreesCounterclockwise:
            tb.Text = "Rotated 180 Degrees Counterclockwise";
            break;
        case SimpleOrientation.Rotated270DegreesCounterclockwise:
            tb.Text = "Rotated 270 Degrees Counterclockwise";
            break;
        case SimpleOrientation.Faceup:
            tb.Text = "Faceup";
            break;
        case SimpleOrientation.Facedown:
            tb.Text = "Facedown";
            break;
        default:
            tb.Text = "Unknown orientation";
            break;
    }
}

Historique des versions

Version de Windows Version du SDK Valeur ajoutée
1809 17763 FromIdAsync
1809 17763 GetDeviceSelector

Propriétés

DeviceId

Obtient l’identificateur d’appareil utilisé dans la méthode SimpleOrientationSensor.FromIdAsync .

ReadingTransform

Obtient ou définit la transformation qui doit être appliquée aux données du capteur. Les transformations à appliquer sont liées à l’orientation d’affichage avec laquelle aligner les données du capteur.

Méthodes

FromIdAsync(String)

Récupère de manière asynchrone un objet SimpleOrientationSensor en fonction de l’identificateur d’appareil spécifié.

GetCurrentOrientation()

Obtient le capteur d’orientation simple par défaut.

GetDefault()

Obtient le capteur d’orientation simple par défaut.

GetDeviceSelector()

Récupère une chaîne AQS (Advanced Query Syntax) utilisée pour énumérer les appareils SimpleOrientationSensor disponibles.

Événements

OrientationChanged

Se produit chaque fois que le capteur d’orientation simple signale une nouvelle lecture de capteur

S’applique à

Voir aussi