Este artículo se tradujo de forma manual. Mueva el puntero sobre las frases del artículo para ver el texto original.
Traducción
Original
Este tema aún no ha recibido ninguna valoración - Valorar este tema

FrameworkElement.Parent (Propiedad)

Obtiene el elemento primario lógico de este elemento.

Espacio de nombres:  System.Windows
Ensamblado:  PresentationFramework (en PresentationFramework.dll)
public DependencyObject Parent { get; }

Valor de propiedad

Tipo: System.Windows.DependencyObject
Elemento primario lógico de este elemento.

Parent puede ser null en los casos donde se crean instancias de un elemento, pero no se asocia a cualquier árbol lógico que en el futuro conecta con el elemento raíz del nivel de página o el objeto de aplicación.

Observe que el elemento primario lógico de un elemento puede cambiar según la funcionalidad de la aplicación; aunque se mantenga el valor de esta propiedad, no se reflejará el cambio. Por lo general, el valor se debe obtener inmediatamente antes de que se necesite.

Vea Árboles en WPF para obtener más información sobre el recorrido del árbol lógico y los escenarios donde es adecuado usar Parent como técnica de detección del elemento primario.

El motor de propiedad vuelve a calcular potencialmente todos los valores de la propiedad de un elemento cuando cambia de elemento primario, porque algunas propiedades heredan los valores a través del árbol lógico. La propiedad DataContext que solicita los enlaces también puede cambiar cuando los elementos cambian de elemento primario.

Cambiar el elemento primario de un elemento sólo se hace normalmente a través de la manipulación de colecciones, mediante métodos Add o Remove dedicados o a través del establecimiento de las propiedades de contenido de los elementos.

El escenario más típico para utilizar la propiedad Parent es obtener una referencia y, a continuación, recibir varios FrameworkElement valores de propiedad del elemento primario. Para las plantillas, la propiedad Parent de la plantilla será finalmente null. Para pasar de este punto y extenderse en el árbol lógico donde se aplica la plantilla realmente, utilice TemplatedParent.

Observe que esta propiedad no informa a los elementos primarios del árbol visual en los casos donde son diferentes de los elementos primarios del árbol lógico. Los elementos primarios del árbol visual normalmente no son importantes para los casos de aplicación generales pero pueden ser convenientes para los elementos primarios en ciertos casos en el nivel visual. Vea VisualTreeHelper.

En el ejemplo siguiente se muestra código que comprueba el elemento primario de un elemento y, a continuación, usa los valores de la propiedad del elemento primario para establecer propiedades coincidentes en el elemento secundario. En este caso, son propiedades que afectan al tamaño de representación.


private void OnUIReady(object sender, System.EventArgs e)
{
    LinePane.Width = ((StackPanel)LinePane.Parent).ActualWidth;
    LinePane.Height = ((StackPanel)LinePane.Parent).ActualHeight;
    DesignerPane.MouseLeave += new System.Windows.Input.MouseEventHandler(DesignerPane_MouseLeave);
    this.SizeChanged += new SizeChangedEventHandler(Window1_SizeChanged);
}


.NET Framework

Compatible con: 4, 3.5, 3.0

.NET Framework Client Profile

Compatible con: 4, 3.5 SP1

Windows 7, Windows Vista SP1 o posterior, Windows XP SP3, Windows Server 2008 (no se admite Server Core), Windows Server 2008 R2 (se admite Server Core con SP1 o posterior), Windows Server 2003 SP2

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.
¿Te ha resultado útil?
(Caracteres restantes: 1500)

Adiciones de comunidad

AGREGAR
© 2013 Microsoft. Reservados todos los derechos.