Cómo se hace una definición de XAML llegar a convertirse en una instancia de un objeto?

StackOverflow https://stackoverflow.com/questions/114154

  •  02-07-2019
  •  | 
  •  

Pregunta

XAML permite especificar el valor de un atributo mediante una cadena que contiene las llaves.Aquí está un ejemplo que crea un Enlace instancia y se asigna a la Texto la propiedad de la Cuadro de texto elemento.

<TextBox Text="{Binding ElementName=Foo, Path=Bar}"/>

Quiero extender XAML para que el desarrollador podría entrar en esto como válido...

<TextBox Text="{MyCustomObject Field1=Foo, Field2=Bar}"/>

Esto crearía una instancia de mi clase y el Campo1/Campo2 propiedades según corresponda.Es esto posible?Si es así, ¿cómo lo haces?

Si esto es posible, tengo una pregunta de seguimiento.Puedo tomar una cadena "{Binding ElementName=Foo, Path=Bar}" y pedimos el marco de procesar y devolver el Enlace instancia especificado?Esto debe hacerse en alguna parte ya de hacer lo anterior XAML y, por lo tanto, debe haber una manera de pedir la misma cosa para ser procesados.

Otros consejos

El Binding es una clase de un La Extensión De Marcado.Usted puede escribir su propio derivando de System.Windows.Markup.MarkupExtension.

ElementName y Path son simplemente propiedades en el Binding objeto.

Como para el seguimiento puede crear una nueva Binding en el código que se ejecuta el Binding objeto.No conozco una manera de procesar una cadena a través de.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top