TextPointer.GetPointerContext(LogicalDirection) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mengembalikan indikator kategori untuk konten yang berdekatan dengan saat ini TextPointer dalam arah logika yang ditentukan.
public:
System::Windows::Documents::TextPointerContext GetPointerContext(System::Windows::Documents::LogicalDirection direction);
public System.Windows.Documents.TextPointerContext GetPointerContext(System.Windows.Documents.LogicalDirection direction);
member this.GetPointerContext : System.Windows.Documents.LogicalDirection -> System.Windows.Documents.TextPointerContext
Public Function GetPointerContext (direction As LogicalDirection) As TextPointerContext
Parameter
- direction
- LogicalDirection
Salah LogicalDirection satu nilai yang menentukan arah logis untuk menentukan kategori untuk konten yang berdekatan.
Mengembalikan
Salah TextPointerContext satu nilai yang menunjukkan kategori untuk konten yang berdekatan dalam arah logis yang ditentukan.
Contoh
Contoh berikut menunjukkan penggunaan untuk metode ini. Contoh menggunakan GetPointerContext metode untuk mengimplementasikan algoritma untuk menghitung keseimbangan tag elemen pembukaan dan penutupan antara dua posisi yang ditentukan TextPointer . Setiap tag elemen pembuka dihitung sebagai +1, dan setiap tag elemen penutup dihitung sebagai -1.
// Calculate and return the relative balance of opening and closing element tags
// between two specified TextPointers.
int GetElementTagBalance(TextPointer start, TextPointer end)
{
int balance = 0;
while (start != null && start.CompareTo(end) < 0)
{
TextPointerContext forwardContext = start.GetPointerContext(LogicalDirection.Forward);
if (forwardContext == TextPointerContext.ElementStart) balance++;
else if (forwardContext == TextPointerContext.ElementEnd) balance--;
start = start.GetNextContextPosition(LogicalDirection.Forward);
} // End while.
return balance;
} // End GetElementTagBalance
' Calculate and return the relative balance of opening and closing element tags
' between two specified TextPointers.
Private Function GetElementTagBalance(ByVal start As TextPointer, ByVal [end] As TextPointer) As Integer
Dim balance As Integer = 0
Do While start IsNot Nothing AndAlso start.CompareTo([end]) < 0
Dim forwardContext As TextPointerContext = start.GetPointerContext(LogicalDirection.Forward)
If forwardContext = TextPointerContext.ElementStart Then
balance += 1
ElseIf forwardContext = TextPointerContext.ElementEnd Then
balance -= 1
End If
start = start.GetNextContextPosition(LogicalDirection.Forward)
Loop ' End while.
Return balance
End Function ' End GetElementTagBalance