FrameworkContentElement.Parent Propriedade

Definição

Obtém o pai na árvore lógica para este elemento.

public:
 property System::Windows::DependencyObject ^ Parent { System::Windows::DependencyObject ^ get(); };
public System.Windows.DependencyObject Parent { get; }
member this.Parent : System.Windows.DependencyObject
Public ReadOnly Property Parent As DependencyObject

Valor de Propriedade

O pai lógico para este elemento.

Exemplos

O exemplo seguinte verifica se o Parent de a TextPointer é de um tipo particular.

// Traverse content in forward direction until the position is immediately after the opening 
// tag of a Run element, or the end of content is encountered.
while (position != null)
{
    // Is the current position just after an opening element tag?
    if (position.GetPointerContext(LogicalDirection.Backward) == TextPointerContext.ElementStart)
    {
        // If so, is the tag a Run?
        if (position.Parent is Run)
            break;
    }

    // Not what we're looking for; on to the next position.
    position = position.GetNextContextPosition(LogicalDirection.Forward);
}
' Traverse content in forward direction until the position is immediately after the opening 
' tag of a Run element, or the end of content is encountered.
Do While position IsNot Nothing
    ' Is the current position just after an opening element tag?
    If position.GetPointerContext(LogicalDirection.Backward) = TextPointerContext.ElementStart Then
        ' If so, is the tag a Run?
        If TypeOf position.Parent Is Run Then
            Exit Do
        End If
    End If

    ' Not what we're looking for on to the next position.
    position = position.GetNextContextPosition(LogicalDirection.Forward)
Loop

Observações

Note que o pai lógico de um elemento pode potencialmente mudar dependendo da funcionalidade da sua aplicação, e manter o valor desta propriedade não refletirá essa alteração. Normalmente, deves receber o valor imediatamente antes de precisares dele.

Consulte Trees em WPF para mais informações sobre a percorrência de árvores lógicas e os cenários onde esta abordagem à descoberta de elementos é apropriada.

O sistema de propriedades pode potencialmente recalcular todos os valores de propriedade de um elemento quando este é reparentalizado, porque algumas propriedades herdam valores através da árvore lógica. O DataContext que se aplica para ligações também pode mudar quando elementos são reparentados.

Alterar o pai de um elemento é normalmente feito apenas através da manipulação de coleções, através de métodos dedicados de adição ou remoção, ou através da definição de propriedades de conteúdo dos elementos.

O cenário mais típico para usar a Parent propriedade é obter uma referência e depois obter vários FrameworkContentElement valores do imóvel da empresa-mãe. Para modelos, o Parent do modelo será nulleventualmente . Para ultrapassar este ponto e estender para a árvore lógica onde o modelo é realmente aplicado, use TemplatedParent.

Aplica-se a

Ver também