TextPointer.GetNextInsertionPosition(LogicalDirection) Metódus
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Visszaadja TextPointer a következő beszúrási pozíciót a megadott logikai irányban.
public:
System::Windows::Documents::TextPointer ^ GetNextInsertionPosition(System::Windows::Documents::LogicalDirection direction);
public System.Windows.Documents.TextPointer GetNextInsertionPosition(System.Windows.Documents.LogicalDirection direction);
member this.GetNextInsertionPosition : System.Windows.Documents.LogicalDirection -> System.Windows.Documents.TextPointer
Public Function GetNextInsertionPosition (direction As LogicalDirection) As TextPointer
Paraméterek
- direction
- LogicalDirection
Az egyik LogicalDirection érték, amely meghatározza a következő beszúrási pozíció keresésének logikai irányát.
Válaszok
A TextPointer következő beszúrási pozíciót azonosítja a kért irányban, vagy null ha nem található következő beszúrási pozíció.
Példák
Az alábbi példa a metódus használatát mutatja be. A példa a tartalomelem-határok átlépésére használja a GetNextInsertionPosition metódust, hogy megszámolja a két megadott Paragraph példány között található elemek számátTextPointer.
// This method returns the number of pagragraphs between two
// specified TextPointers.
int GetParagraphCount(TextPointer start, TextPointer end)
{
int paragraphCount = 0;
while (start != null && start.CompareTo(end) < 0)
{
Paragraph paragraph = start.Paragraph;
if (paragraph != null)
{
paragraphCount++;
// Advance start to the end of the current paragraph.
start = paragraph.ContentEnd;
}
// Use the GetNextInsertionPosition method to skip over any interceding
// content element tags.
start = start.GetNextInsertionPosition(LogicalDirection.Forward);
} // End while.
return paragraphCount;
} // End GetParagraphCount.
' This method returns the number of pagragraphs between two
' specified TextPointers.
Private Function GetParagraphCount(ByVal start As TextPointer, ByVal [end] As TextPointer) As Integer
Dim paragraphCount As Integer = 0
Do While start IsNot Nothing AndAlso start.CompareTo([end]) < 0
Dim paragraph As Paragraph = start.Paragraph
If paragraph IsNot Nothing Then
paragraphCount += 1
' Advance start to the end of the current paragraph.
start = paragraph.ContentEnd
End If
' Use the GetNextInsertionPosition method to skip over any interceding
' content element tags.
start = start.GetNextInsertionPosition(LogicalDirection.Forward)
Loop ' End while.
Return paragraphCount
End Function ' End GetParagraphCount.
Megjegyzések
A beszúrási pozíció olyan pozíció, ahol új tartalom adható hozzá a társított tartalom szemantikai szabályainak megszegése nélkül. A gyakorlatban a beszúrási pozíció bárhol megtalálható a tartalomban, ahol egy ápoló elhelyezhető. Egy olyan érvényes TextPointer pozícióra példa, amely nem beszúrási pozíció, a két szomszédos Paragraph címke (azaz az előző bekezdés záró címkéje és a következő bekezdés nyitó címkéje) közötti pozíció.