Tengo un error extraño que estoy intentando depurar sin suerte.'{DependencyProperty.UnsetValue}' no es un valor válido para la propiedad 'FocusVisualStyle'
He subclase hwndhost mostrando algo de contenido, que tienen la siguiente función en esa clase para establecer a pantalla completa:
private void SetFullScreen(bool enable)
{
if (enable)
{
fs = new Window();
fs.ResizeMode = ResizeMode.NoResize;
fs.WindowState = System.Windows.WindowState.Maximized;
fs.WindowStyle = System.Windows.WindowStyle.None;
fs.Topmost = true;
fs.PreviewKeyDown += delegate(object sender, KeyEventArgs e) {
if (e.Key==Key.Escape)
FullScreen = false;
};
fs.Show();
}
else
{
fs.Close();
fs = null;
}
}
Esto funcionó bien en mi prototipo WPF aplicación, pero cuando utilizo este código en mi aplicación principal me sale este error al cerrar la (tecla de escape) y la ventana de fs.close()
llamada:
'{DependencyProperty.UnsetValue}' is not a valid value for property 'FocusVisualStyle'.
lo extraño es que ocurre sobre 1.500 ms después del cierre de la ventana. He intentado configurar FocusVisualStyle en fs
como nulo, pero parece algo más. La sensación es que trata de enfocar otro elemento en mi aplicación que no tiene esta propiedad, ¡pero realmente no tengo ni idea!
Gracias!
Editar. El problema fue la configuración personalizada de FocusVisualStyle en mi botón de pantalla completa. Configuré en {x: Null} y el problema desapareció.
Un botón de alternancia inicia el comando de pantalla completa, así que supongo que se enfoca en el retorno. Sin embargo, más tarde, un comando de teclado (por ejemplo, F12) podría iniciarlo, por lo que podría ser cualquier elemento que tenga el foco actual. That togglebutton tiene un estilo personalizado. Intenté configurar el FocusVisualStyle en ese estilo en {x: Null} sin suerte. – DaveO
Miento, se estableció en dos lugares, eliminando el segundo resolvió el problema thx! – DaveO
no hay problema, feliz de ayudar! – David