title: What elements can block WPF dependency property inheritance?
body: <p>My WPF App attaches a custom inherited dependency property (from a behavior) to my main application view.  The idea is to pass this property (which never changes once the app is running) all the way down to some very nested controls that need it</p>
  
  <pre><code>&lt;Window x:Class="MyApp.Views.MainWindow"
          core:SystemBehavior.SystemService="{Binding MySystem}"
  </code></pre>
  
  <p>It works well.   So far, all of my controls have been able to access this data</p>
  
  <pre><code>&lt;ComboBox ItemsSource="{Binding RelativeSource={RelativeSource Self}, 
                                  Path=(core:SystemBehavior.SystemService).Units}"
  </code></pre>
  
  <p>But there's this ominous sentence in the <a href="https://docs.microsoft.com/en-us/dotnet/framework/wpf/advanced/property-value-inheritance" rel="nofollow noreferrer">MS documentation about Property Value Inheritance</a>  that gives me pause. </p>
  
  <blockquote>
    <p>However, property value inheritance can bridge this gap in the logical
    tree and can still pass inherited values through, so long as the
    inheritable property was registered as an attached property <strong><em>and no
    deliberate inheritance-blocking boundary (such as a Frame) is
    encountered.</em></strong></p>
  </blockquote>
  
  <p>(emphasis added by me)</p>
  
  <p>So my question is:  What elements (besides a frame) can "block" dependency property inheritance?</p>