Orden de lectura de InputView en Windows
Esta interfaz de usuario de aplicación multiplataforma de .NET (.NET MAUI) específica de Windows habilita la detección dinámica del orden de lectura (de izquierda a derecha o de derecha a izquierda) del texto bidireccional en los objetos Entry, Editor y Label. Se consume en XAML estableciendo la propiedad adjunta InputView.DetectReadingOrderFromContent
(para objetos Entry y Editor) o Label.DetectReadingOrderFromContent
a un valor boolean
:
<ContentPage ...
xmlns:windows="clr-namespace:Microsoft.Maui.Controls.PlatformConfiguration.WindowsSpecific;assembly=Microsoft.Maui.Controls">
<StackLayout>
<Editor ... windows:InputView.DetectReadingOrderFromContent="true" />
...
</StackLayout>
</ContentPage>
Como alternativa, se puede consumir desde C# mediante la API fluida:
using Microsoft.Maui.Controls.PlatformConfiguration.WindowsSpecific;
...
editor.On<Microsoft.Maui.Controls.PlatformConfiguration.Windows>().SetDetectReadingOrderFromContent(true);
El método Editor.On<Microsoft.Maui.Controls.PlatformConfiguration.Windows>
especifica que esta plataforma específica solo se ejecutará en Windows. El método InputView.SetDetectReadingOrderFromContent
, en el espacio de nombres Microsoft.Maui.Controls.PlatformConfiguration.WindowsSpecific
, se usa para controlar si se detecta el orden de lectura a partir del contenido en InputView. Además, se puede usar el método InputView.SetDetectReadingOrderFromContent
para alternar si se detecta el orden de lectura a partir del contenido, llamando al método InputView.GetDetectReadingOrderFromContent
para que devuelva el valor actual:
editor.On<Microsoft.Maui.Controls.PlatformConfiguration.Windows>().SetDetectReadingOrderFromContent(!editor.On<Microsoft.Maui.Controls.PlatformConfiguration.Windows>().GetDetectReadingOrderFromContent());
El resultado es que se puede detectar de forma dinámica el orden de lectura del contenido de los objetos Entry, Editor y Label:
Nota:
A diferencia de la configuración de la propiedad FlowDirection
, la lógica de las vistas que detectan el orden de lectura a partir de su contenido de texto no afectará a la alineación del texto dentro de la vista. En su lugar, ajusta el orden en el que se diseñan bloques de texto bidireccional.