語言

TextPatternRange.Clone 方法

定義

取得 TextPatternRange 與原始 TextPatternRange 相同且繼承原始所有性質的新

public:
 System::Windows::Automation::Text::TextPatternRange ^ Clone();
public System.Windows.Automation.Text.TextPatternRange Clone();
member this.Clone : unit -> System.Windows.Automation.Text.TextPatternRange
Public Function Clone () As TextPatternRange

傳回

新的文字系列。 空參考(Nothing 在 Visual Basic)永遠不會回傳。

範例

private TextPatternRange CloneSelection(AutomationElement target)
{
    // Specify the control type we're looking for, in this case 'Document'
    PropertyCondition cond = new PropertyCondition(AutomationElement.ControlTypeProperty, ControlType.Document);

    // target --> The root AutomationElement.
    AutomationElement textProvider = target.FindFirst(TreeScope.Descendants, cond);

    TextPattern textpatternPattern = textProvider.GetCurrentPattern(TextPattern.Pattern) as TextPattern;

    if (textpatternPattern == null)
    {
        Console.WriteLine("Root element does not contain a descendant that supports TextPattern.");
        return null;
    }
    TextPatternRange[] currentSelection = textpatternPattern.GetSelection();
    return currentSelection[0].Clone();
}
Private Function CloneSelection(ByVal target As AutomationElement) As TextPatternRange
    ' Specify the control type we're looking for, in this case 'Document'
    Dim cond As PropertyCondition = New PropertyCondition(AutomationElement.ControlTypeProperty, ControlType.Document)

    ' target --> The root AutomationElement.
    Dim textProvider As AutomationElement = target.FindFirst(TreeScope.Descendants, cond)

    Dim textpatternPattern As TextPattern = CType(textProvider.GetCurrentPattern(TextPattern.Pattern), TextPattern)

    If (textpatternPattern Is Nothing) Then
        Console.WriteLine("Root element does not contain a descendant that supports TextPattern.")
        Return Nothing
    End If
    Dim currentSelection As TextPatternRange() = textpatternPattern.GetSelection()
    Return currentSelection.Clone(0)
End Function

備註

或者,從 建立一個新 DocumentRangeTextPattern ,並將兩個端點移動到對應原始文字範圍的端點。

新的範圍可以獨立於原有的範圍進行調整。

適用於

另請參閱