title: ContentControl in a UserControl causes an exception
body: <p>Adding a <code>ContentControl</code> with a binding into my <code>UserControl</code> causes an exception:</p>
  
  <pre><code>InvalidOperationException: Layout recursion reached allowed limit to avoid stack overflow: '2047'. Either the tree contains a loop or is too deep.
  </code></pre>
  
  <p>I try to switch between two views with use of content control:</p>
  
  <pre><code>    &lt;ContentControl Grid.Row="2" Content="{Binding}"&gt;
          &lt;ContentControl.Style&gt;
              &lt;Style TargetType="ContentControl"&gt;
                  &lt;Style.Triggers&gt;
                      &lt;DataTrigger Binding="{Binding IsListView}" Value="True"&gt;
                          &lt;Setter Property="ContentTemplate" Value="{DynamicResource ListTemplate}" /&gt;
                      &lt;/DataTrigger&gt;
                      &lt;DataTrigger Binding="{Binding IsTabView}" Value="True"&gt;
                          &lt;Setter Property="ContentTemplate" Value="{DynamicResource TabTemplate}" /&gt;
                      &lt;/DataTrigger&gt;
                  &lt;/Style.Triggers&gt;
              &lt;/Style&gt;
          &lt;/ContentControl.Style&gt;
      &lt;/ContentControl&gt;
  </code></pre>
  
  <p>Once the <code>Content={Binding}</code> is removed, the exception is gone. How can I trace the source of the exception? Investigation of the exception members didn't give any clue on what can cause this recursion.</p>
  
  <p><strong>UPD</strong>: Leaving the <code>ContentControl</code> empty (e.g. without <code>ListTemplate</code> and <code>TabTemplate</code>) doesn't solve the problem.</p>