¿Es posible establecer el valor detrás de un enlace bidireccional directamente, sin conocer la propiedad enlazada?Establezca el valor de enlace directamente
que tienen una propiedad adjunta que está enlazado a una propiedad como esta:
<Element my:Utils.MyProperty="{Binding Something}" />
Ahora quieren cambiar el valor que se almacena de manera efectiva en Something
desde la perspectiva de la propiedad adjunta. Por lo tanto, no puedo acceder directamente a la propiedad vinculada, pero solo tengo referencias al objeto DependencyObject
(es decir, la instancia Element) y al objeto DependencyProperty
.
El problema cuando simplemente configurándolo a través de DependencyObject.SetValue
es que esto efectivamente elimina el enlace, pero quiero cambiar la propiedad de límite subyacente.
Utilizando BindingOperations
puedo obtener el Binding
y el BindingExpression
. ¿Ahora hay una forma de acceder a la propiedad detrás de ella y cambiar su valor?
¿Usted escribió el documento adjunto-Apoyo a sí mismo como en el que puede cambiar su PropertyMetadata? ¿Supongo que no? –
@HellScream Sí, estoy escribiendo la propiedad yo mismo, así que puedo cambiar los metadatos si eso ayuda. – poke