Como usar o ScrollViewer.ScrollToVerticalOffset?

Espero que isso não seja uma duplicata, mas não consigo encontrar nenhuma documentação ou exemplos sobre como realmenteusar ScrollToVerticalOffset(). Estou usando-o em um aplicativo do Windows Phone 8, mas acho que ele ainda se aplica ao WP7 e ao Silverlight (embora, sinta-se à vontade para me corrigir se eu estiver errado).

Então aqui está minha configuração básica (pseudo-código da memória):

<phone.PivotItem>
   <ScrollViewer>
      <Grid Height="1500">
         <Grid.RowDefinitions>
            <!-- about 20 rows, all auto-height -->
         </Grid.RowDefinitions>

         <Border Grid.Row="0">
            <TextBox x:Name="txt1" />
         </Border>
         <Border Grid.Row="1">
            <TextBox x:Name="txt2" />
         </Border>

         <!-- ...... -->

         <Border Grid.Row="19">
            <TextBox x:Name="txt20" />
         </Border>
      </Grid>
   </ScrollViewer>
</phone.PivotItem>

Então, como você pode ver, eu tenho umScrollViewer dentro de umPivotIteme dentro é umGrid. NoGrid há cerca de 20TextBoxs, cada um dentro de umBorder. Estou dinamicamente definindo o foco para um dessesTextBoxs quando esta página é carregada, então sempre que eu definir o foco paraTextBox # 6-20 (aproximadamente) - Eu tenho que rolar manualmente para baixo para vê-lo. Eu quero rolar automaticamente meuScrollViewer de modo que o queTextBox tem foco, será centralizado para o usuário ver.

odocumentação paraScrollToVerticalOffset() diz:

Rola o conteúdo que está dentro do ScrollViewer até a posição de deslocamento vertical especificada.

E que aceita um tipo deSystem.Double.

O que eu não entendo é A) o valor que eu deveria passar, e B) como eu poderia até obter esse valor? É suposto ser um número entre 0 e a altura da minhaGrid (1500) Se sim, como eu poderia determinar a posição de qualquerTextBox então eu posso rolar para ele?

Se houver exemplos simples, sinta-se à vontade para entrar em contato com eles. Não tenho certeza se o conteúdo dentro doScrollViewer importa quando chamar esse método, mas no caso que eu queria mostrar exatamente como eu estou usando.

Muito obrigado antecipadamente!

questionAnswers(1)

yourAnswerToTheQuestion