Skip to content

DirectionProvider

DirectionProvider cascades a reading-direction string ("ltr" or "rtl") to descendants via a named cascading parameter. It renders no element itself, and each descendant is individually responsible for reading the cascaded value and reflecting it, for example by setting its own dir attribute.

Retired per ADR-0003. WPF’s native FrameworkElement.FlowDirection (LeftToRight/ RightToLeft) already cascades down the visual/logical tree via property-value inheritance and automatically mirrors layout, text, and scrollbars for every descendant, a strict upgrade over the web’s opt-in-per-consumer cascading value. Consumers set FlowDirection directly on the relevant FrameworkElement instead of wrapping content in a direction-cascading component.

  • No NaviusDirectionProvider or cascaded NaviusDirection equivalent ships; RTL/LTR is expressed as FlowDirection directly on a container, not as a value descendants opt into reading.
  • The web cascade lets each consumer decide whether and how to reflect dir (some consumers ignore it, some use it only for RTL-aware layout math such as anchored-popover mirroring); FlowDirection instead applies automatically and uniformly to every descendant, so the WPF port cannot reproduce the web’s selective opt-in behavior, only a stronger, automatic form of it.
  • The web component accepts any string for Dir with no validation; FlowDirection is a validated two-value enum, so a string-typed API was not preserved.