Tengo un TabItem que contiene un cuadro de lista, que tiene una colección obeservable de mi clase de feeds como fuente del elemento. Cuando actualizo/cargo los feeds en la colección, deseo desactivar la ventana principal para que el usuario no pueda hacer clic en otras cosas mientras se está ejecutando este proceso. Así que establecí tbCtrl.isEnabled=false;
en mi control de pestañas en el formulario. A continuación, asigne un controlador de eventos al evento de finalización personalizado que se desencadena después de cargar todos los feeds.Los hipervínculos permanecen inactivos después de establecer isEnabled = true para el control principal
Todo funciona bien, sin embargo, los hipervínculos para los resultados que se muestran actualmente en el control de pestaña nunca se vuelven a habilitar (ni tampoco los siguientes que están fuera de vista debido al tamaño del cuadro de lista). Todos los otros resultados más abajo están bien, al igual que los resultados en la otra pestaña.
He intentado llamar al InvalidateVisual
en el control de pestañas después de que todo haya terminado, para ver si eso hace la diferencia pero eso no parece causar ningún cambio.
Pude entenderlo si fueron todos los hipervínculos que lo hicieron, o solo los que se muestran actualmente, pero no entiendo por qué los que están fuera de desplazamiento tampoco funcionan.
Image of Issue http://i42.tinypic.com/5wm0qx.jpg
Busco una respuesta a la misma cuestión. He vinculado el hipervínculo. He habilitado una propiedad con INotifyPropertyChanged. Cuando invoco el cambio de una manera, las actualizaciones de IsEnabled. Otra forma, no lo hace. (Ambos son hilos) - Pero un botón con el mismo enlace obtiene su IsEnabled cambiado.Todo lo que me queda es una vaga suposición de que tiene algo que ver con que el documento de flujo actúe de manera diferente a un control, ¿pero no estoy seguro de por qué? Lo más extraño: si configuro el enlazado del hipervínculo a IsEnabled = "{Binding ElementName = AControlWithIsEnabledBinding, Path = IsEnabled}", ¡FUNCIONA !. Pero ¿cuánto de un truco es eso, eh? – Daryn
Solo una nota, este problema parece estar solucionado a partir de .NET 4.6.1. Es importante tener esto en cuenta si está desarrollando en un entorno 4.6.1+ pero apuntando a versiones inferiores de .NET, ya que los estados habilitados para hipervínculos parecerán funcionar bien para usted, pero si alguien con una versión .NET más baja ejecuta su aplicación, se encontrarán con este problema. – Mogzol