'{DependencyProperty.UnsetValue}' не является допустимым значением для свойства 'FocusVisualStyle'

У меня странная ошибка. Я безуспешно пытаюсь отладить.

Я создал подклассы hwndhost показывает некоторый контент, у меня есть следующая функция в этом классе, которую нужно установить в полноэкранный режим:

    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;
        }
    }

Это нормально работало в моем прототипе приложения WPF, но когда я использую этот код в своем основном приложении, я получаю эту ошибку при закрытии окна (клавиша escape ) и на фс. close () вызов:

'{DependencyProperty.UnsetValue}' не является допустимым значением для свойства 'FocusVisualStyle'.

Странно то, что это происходит примерно через 1500 мс ПОСЛЕ закрытия окна. Я пробовал установить для FocusVisualStyle fs значение null, но это похоже на другое. По ощущениям, он пытается сфокусировать в моем приложении другой элемент, у которого нет этого свойства, но на самом деле я понятия не имею!

Спасибо!

Изменить. Проблема заключалась в пользовательской настройке FocusVisualStyle на моей полноэкранной кнопке. Я установил {x: Null}, и проблема исчезла.

9
задан DaveO 23 February 2011 в 19:02
поделиться