title: Silverlight RichTextBox/ListBox/ScrollViewer strange behaviour
body: <p>I have a user control with the following XAML:</p>
  
  <pre><code>&lt;ScrollViewer&gt;
      &lt;ListBox ItemsSource="{Binding Items}"&gt;
          &lt;ListBox.ItemTemplate&gt;
              &lt;DataTemplate&gt;
                  &lt;RichTextBox&gt;
                      &lt;Paragraph&gt;
                          &lt;Run Text="{Binding}"/&gt;
                      &lt;/Paragraph&gt;
                  &lt;/RichTextBox&gt;
              &lt;/DataTemplate&gt;
          &lt;/ListBox.ItemTemplate&gt;
      &lt;/ListBox&gt;
  &lt;/ScrollViewer&gt;
  </code></pre>
  
  <p>And code behind:</p>
  
  <pre><code>public partial class MainPage {
      public MainPage() {
          InitializeComponent();
          Items = new ObservableCollection&lt;string&gt;(Enumerable.Range(0, 100).Select(x =&gt; "some text"));
          DataContext = this;
      }
  
      public ObservableCollection&lt;string&gt; Items { get; set; }
  }
  </code></pre>
  
  <p>When this code runs, the vertical scroll bar for the ScrollViewer goes down to the bottom. However, if I remove the binding in the Run in the RichTextBox and hard-code the text:</p>
  
  <pre><code>&lt;Run Text="some text"/&gt;
  </code></pre>
  
  <p>Now the scroll bar stays at the top (as I would expect).</p>
  
  <p>Is this a bug? If not, what is going on? How can I fix this (note: this is simplified XAML, I need the ScrollViewer because the ListBox is actually in a grid)?</p>