이 문서는 기계 번역을 이용하여 번역되었습니다. 문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문

TextPointer.GetPositionAtOffset 메서드 (Int32)

 

현재 TextPointer 시작 부분에서 지정된 오프셋(기호)으로 표시되는 위치에 대한 TextPointer를 반환합니다.

네임스페이스:   System.Windows.Documents
어셈블리:  PresentationFramework.dll의 PresentationFramework

public TextPointer GetPositionAtOffset(
	int offset
)

매개 변수

offset

위치를 계산하고 반환할 오프셋(기호)입니다. 오프셋이 음수이면 위치는 LogicalDirection 속성으로 표시되는 방향과 반대 논리 방향으로 계산됩니다.

반환 값

Type: System.Windows.Documents.TextPointer

지정된 오프셋으로 표시되는 위치에 대한 TextPointer입니다. 해당 위치를 찾을 수 없는 경우 null 입니다.

@FSHO1@다음 항목은 기호로 간주됩니다.

  • TextElement 요소의 여는 태그 또는 닫는 태그입니다.

  • InlineUIContainer 또는 BlockUIContainer에 포함되는 UIElement 요소입니다. 이러한 UIElement는 항상 정확히 하나의 기호로 간주되며 UIElement에 포함된 추가 콘텐츠나 요소는 기호로 간주되지 않습니다.

  • 텍스트 Run 요소 내의 16비트 Unicode 문자입니다.

다음 예제에서는 이 메서드의 사용 방법을 보여 줍니다.이 예제에서는 GetPositionAtOffset 메서드를 사용하여 한 쌍의 메서드를 구현합니다. 이 중 하나는 호스팅 단락에 상대적으로 지정된 위치에 대한 오프셋을 계산하는 메서드이고, 나머지 하나는 지정된 단락의 지정한 오프셋에 대한 TextPointer를 반환하는 메서드입니다.

// Returns the offset for the specified position relative to any containing paragraph.
int GetOffsetRelativeToParagraph(TextPointer position)
{
    // Adjust the pointer to the closest forward insertion position, and look for any
    // containing paragraph.
    Paragraph paragraph = (position.GetInsertionPosition(LogicalDirection.Forward)).Paragraph;

    // Some positions may be not within any Paragraph; 
    // this method returns an offset of -1 to indicate this condition.
    return (paragraph == null) ? -1 : paragraph.ContentStart.GetOffsetToPosition(position);
}

// Returns a TextPointer to a specified offset into a specified paragraph. 
TextPointer GetTextPointerRelativeToParagraph(Paragraph paragraph, int offsetRelativeToParagraph)
{
    // Verify that the specified offset falls within the specified paragraph.  If the offset is
    // past the end of the paragraph, return a pointer to the farthest offset position in the paragraph.
    // Otherwise, return a TextPointer to the specified offset in the specified paragraph.
    return (offsetRelativeToParagraph > paragraph.ContentStart.GetOffsetToPosition(paragraph.ContentEnd)) 
        ? paragraph.ContentEnd : paragraph.ContentStart.GetPositionAtOffset(offsetRelativeToParagraph);
}

.NET Framework
3.0 이후에 사용 가능
맨 위로 이동
표시: