2011-02-06 24 views
5

Tengo un elemento UI cuyo color me gustaría establecer en función de una variable local en la página (bueno, en realidad en un módulo, pero puedo moverlo a la página).WP7 Enlace a la variable local

veo en WPF uno se puede unir un elemento de interfaz de usuario para una variable local al hacer la variable de una propiedad y el establecimiento de la unión RelativeSource a la clase padre usando FindAncestor:

WPF Binding to local variable

Desafortunadamente Silverlight no parece ser compatible con el modo FindAncestor.

¿Alguna solución posible, o tengo que crear una instancia de una clase personalizada y tal solo para esta variable?

Respuesta

7

He estado saltando de Silverlight a WPF mucho en las últimas semanas, por lo que la siguiente idea puede o no volar.

¿Su página tiene el nombre propiedad establecida en él? Si no, establézcalo (x: Name = "MyPage").

entonces usted puede hacer:

Fill="{Binding ElementName=MyPage, Path=MyProperty}" 

Inténtelo (justo al lado de la parte superior de la cabeza)

+0

+1, estaba a punto de publicar la misma respuesta. El enlace de ElementName es la solución usual (más débil) por falta de FindAncestor. FWIW, FindAncestor vinculante viene en Silverlight 5, así que con suerte esto eventualmente hace su camino hacia el teléfono. –

+0

Hmm se encargó de hacerlo con una propiedad entera para que fuera simple. Nombrada la página "Mi página", luego en el elemento UI, ponga: ''. En el código de la página, tengo: 'Property gDirection As Integer = 45'. Esto arroja una excepción en la carga. Si reemplazo el enlace con 45, funciona bien, así que parece que el enlace no funciona ... – amb9800

+0

¿cuál es la excepción? – Mark

Cuestiones relacionadas