title: ScrollViewer Zoom problems
body: <p>I'm trying to implement zoom in/out functionality in a ScrollViewer in WP7.  Inside my scrollviewer is a usercontrol, which consists of a grid and some ellipsis in variaous cells.</p>
  
  <p>Implementing no zoom, I am able to run the app in the emulator and scroll the scrollviewer up/down, left/right.  </p>
  
  <p>My initial thought was to use a scale transform on the scrollviewer:</p>
  
  <pre><code>&lt;ScrollViewer x:Name="svScale"
                  Margin="0" 
                  Grid.Row="1" 
                  HorizontalScrollBarVisibility="Visible"&gt;
      &lt;ScrollViewer.RenderTransform&gt;
          &lt;ScaleTransform ScaleX="2" ScaleY="2"/&gt;
      &lt;/ScrollViewer.RenderTransform&gt;
      &lt;ScrollViewer.RenderTransformOrigin&gt;
          &lt;Point X=".5" Y=".5"/&gt;
      &lt;/ScrollViewer.RenderTransformOrigin&gt;
      &lt;local:MyControl x:Name="test" 
                          Width="486" 
                          Height="56"&gt;
      &lt;/local:MyControl&gt;
  &lt;/ScrollViewer&gt;
  </code></pre>
  
  <p>The problem is that when I scroll around, the scrollviewer always scrolls the contents back to the vertical and horizontal center.</p>
  
  <p>So I tried applying the scale transform to the user control:</p>
  
  <pre><code>&lt;ScrollViewer x:Name="svScale"
                  Margin="0" 
                  Grid.Row="1" 
                  HorizontalScrollBarVisibility="Visible"&gt;
      &lt;local:MyControl x:Name="test" 
                          Width="486" 
                          Height="56"
                          SelectedKey="{Binding SelectedKey}"
                          SelectedScale="{Binding SelectedScale}"&gt;
          &lt;local:MyControl.RenderTransform&gt;
              &lt;ScaleTransform ScaleX="2" ScaleY="2"/&gt;
          &lt;/local:MyControl.RenderTransform&gt;
          &lt;local:MyControl.RenderTransformOrigin&gt;
              &lt;Point X=".5" Y=".5"/&gt;
          &lt;/local:MyControl.RenderTransformOrigin&gt;
      &lt;/local:MyControl&gt;
  &lt;/ScrollViewer&gt;
  </code></pre>
  
  <p>But when I apply the scale transform to the user control, it doesn't appear any larger than it normally does, regardless of what the ScaleX and ScaleY values are.  What is going on here?</p>