Wie verwende ich ScrollViewer.ScrollToVerticalOffset?

Ich hoffe, dass dies kein Duplikat ist, aber ich kann keine Dokumentation oder Beispiele finden, wie es tatsächlich gehtbenutzen ScrollToVerticalOffset(). Ich verwende es in einer Windows Phone 8-App, aber ich denke, es wird immer noch auf WP7 und Silverlight zutreffen.

Also hier ist meine Grundeinstellung (Pseudocode aus dem Speicher):

<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>

Wie Sie sehen können, habe ich eineScrollViewer innerhalb einesPivotItemund drinnen ist einGrid. In demGrid es sind ungefähr 20TextBoxs, jeweils innerhalb einesBorder. Ich setze dynamisch den Fokus auf eines davonTextBoxs wenn diese Seite geladen wird, also immer wenn ich den Fokus auf setzeTextBox # 6-20 (ungefähr) - Ich muss manuell nach unten scrollen, um es zu sehen. Ich möchte meinen automatisch scrollenScrollViewer so dass was auch immerTextBox Hat der Benutzer den Fokus, wird er zentriert angezeigt.

DasDokumentation zumScrollToVerticalOffset() sagt:

Führt einen Bildlauf des Inhalts im ScrollViewer an die angegebene vertikale Versatzposition durch.

Und dass es eine Art akzeptiertSystem.Double.

Was ich nicht verstehe, ist A) der Wert, den ich weitergeben soll, und B) wie ich diesen Wert überhaupt bekommen kann? Soll es eine Zahl zwischen 0 und der Höhe meines sein?Grid (1500) & le; Wenn ja, wie könnte ich die Position einer bestimmten Person bestimmen?TextBox damit ich dorthin scrollen kann?

Wenn es unkomplizierte Beispiele gibt, können Sie sie gerne verlinken. Ich bin mir nicht sicher, ob der Inhalt in derScrollViewer Wenn ich diese Methode aufrufe, ist das wichtig, aber für den Fall wollte ich genau zeigen, wie ich sie verwende.

Vielen Dank im Voraus!

Antworten auf die Frage(1)

Ihre Antwort auf die Frage