TextPatternRange.Clone Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Recupera um novo TextPatternRange idêntico ao TextPatternRange original e herdando todas as propriedades do original.
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
Retornos
O novo intervalo de texto. Uma referência nula (Nothing
no Visual Basic) nunca é retornada.
Exemplos
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
Comentários
Como alternativa, crie um novo DocumentRange e TextPattern mova os dois pontos de extremidade para corresponder aos pontos de extremidade do intervalo de texto original.
O novo intervalo pode ser manipulado independentemente do original.