InputView-Lesereihenfolge unter Windows
Diese Universelle Windows-Plattform plattformspezifisch ermöglicht die dynamische Erkennung der Leserichtung (von links nach rechts oder von rechts nach links) bidirektionaler Text in Entry
, Editor
und Label
Instanzen. Sie wird in XAML genutzt, indem sie die InputView.DetectReadingOrderFromContent
Eigenschaft (für Entry
und Editor
Instanzen) oder Label.DetectReadingOrderFromContent
angefügte Eigenschaft auf einen boolean
Wert festlegt:
<ContentPage ...
xmlns:windows="clr-namespace:Xamarin.Forms.PlatformConfiguration.WindowsSpecific;assembly=Xamarin.Forms.Core">
<StackLayout>
<Editor ... windows:InputView.DetectReadingOrderFromContent="true" />
...
</StackLayout>
</ContentPage>
Alternativ kann es auch von C# aus über die Fluent-API genutzt werden:
using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.WindowsSpecific;
...
editor.On<Windows>().SetDetectReadingOrderFromContent(true);
Die Editor.On<Windows>
Methode gibt an, dass diese plattformspezifische Nur auf dem Universelle Windows-Plattform ausgeführt wird. Mithilfe der Methode InputView.SetDetectReadingOrderFromContent
im Namespace Xamarin.Forms.PlatformConfiguration.WindowsSpecific
wird gesteuert, ob die Lesereihenfolge anhand des Inhalts in InputView
erkannt wird. Darüber hinaus kann mit der Methode InputView.SetDetectReadingOrderFromContent
umgeschaltet werden, ob die Lesereihenfolge anhand des Inhalts erkannt wird, indem die Methode InputView.GetDetectReadingOrderFromContent
aufgerufen wird, um den aktuellen Wert zurückzugeben:
editor.On<Windows>().SetDetectReadingOrderFromContent(!editor.On<Windows>().GetDetectReadingOrderFromContent());
Das Ergebnis ist, dass Entry
, Editor
und Label
Instanzen die Lesereihenfolge ihres Inhalts dynamisch erkannt haben können:
Hinweis
Im Gegensatz zur Einstellung der Eigenschaft FlowDirection
wirkt sich die Logik für Ansichten, die die Lesereihenfolge anhand ihres Textinhalts erkennen, nicht auf die Ausrichtung des Textes innerhalb der Ansicht aus. Stattdessen wird die Reihenfolge angepasst, in der die Blöcke mit bidirektionalem Text angeordnet sind.