Binding.ElementName Propiedad

Definición

Obtiene o establece el nombre del elemento que se va a usar como origen de enlace para binding.

public:
 property Platform::String ^ ElementName { Platform::String ^ get(); void set(Platform::String ^ value); };
winrt::hstring ElementName();

void ElementName(winrt::hstring value);
public string ElementName { get; set; }
var string = binding.elementName;
binding.elementName = string;
Public Property ElementName As String
<Binding ElementName="nameString"/>

Valor de propiedad

String

Platform::String

winrt::hstring

Valor de la propiedad Name o del atributo x:Name para el elemento que desea usar como origen de enlace. El valor predeterminado es una cadena vacía.

Ejemplos

En el ejemplo de código siguiente se muestra cómo establecer un enlace bidireccional entre un control TextBox y un control Slider . Para obtener la lista de código completa, consulta el escenario 1 en el ejemplo de enlace de datos XAML.

<Slider x:Name="slider1" Minimum="1" Maximum="100"/>
<TextBox Text="{Binding ElementName=slider1, Path=Value, Mode=TwoWay}"/>

Comentarios

Al establecer esta propiedad, el valor especificado debe hacer referencia a un elemento en una de las siguientes ubicaciones:

  • Ámbito de nombres XAML actual.
  • Ámbito de nombres XAML del elemento primario con plantilla si el destino de enlace está en una plantilla de datos o plantilla de control. Debido a esta restricción, no puedes usar la propiedad ElementName para enlazar a elementos que no se crean mediante XAML. Para enlazar a los elementos creados mediante programación, use la propiedad Source en su lugar. Source, RelativeSource y ElementName son mutuamente excluyentes en un enlace. Si has establecido uno de estos atributos, establecer cualquiera de los otros dos en un enlace (a través de XAML o a través de código) provocará una excepción.

Los enlaces que usan un valor ElementName casi siempre incluyen una ruta de acceso simple que asigna un nombre a una propiedad que existe en el objeto al que se hace referencia. Es habitual que la propiedad de origen del elemento con nombre y la propiedad de destino del destino tengan el mismo nombre y usen el mismo tipo de valor, este es un escenario que se ve bastante a menudo en definiciones de plantilla de control que composiciones de elementos de control pero propiedades de superficie de las partes. Si las propiedades de origen y destino usan tipos diferentes, especifique un valor de Convertidor que pueda resolver la diferencia de tipo y devolver un valor adecuado para el destino.

Para obtener más información sobre los ámbitos de nombres XAML y cómo influyen en los enlaces y otros accesos mediante programación a los objetos creados a partir de XAML, consulta Ámbitos de nombres XAML.

El valor de ElementName puede ser técnicamente cualquier cadena, pero los valores del atributo Name y x:Name se aplican para que sean válidos en la gramática XamlName, por lo que normalmente está enlazado por esa gramática también para un valor ElementName. Para obtener más información sobre lo que es válido para un nombre de elemento, consulta la sección "Gramática xamlName" en la referencia del atributo x:Name .

No se pueden establecer los valores de propiedad de un objeto Binding después de que ese enlace se haya asociado a un elemento de destino y a una propiedad de destino. Si intenta esto, obtendrá una excepción en tiempo de ejecución.

Se aplica a

Consulte también