Я использую довольно простое ContentControl
переключение между различными типами контента:
<ContentControl Content="{Binding MyContent}">
<ContentControl.Resources>
<DataTemplate DataType="{x:Type local:Type1}">
<local:View1/>
</DataTemplate>
<DataTemplate DataType="{x:Type local:Type2}">
<local:View2/>
</DataTemplate>
...
</ContentControl.Resources>
</ContentControl>
Случайным образом (например, 20% всех запусков), когда отображается представление, оно отображается полностью прозрачным, но не позволяет элементам управления позади него получать входные данные.
Если я пытаюсь использовать Snoop в окне, представление мгновенно отображается. Представление даже принимает ввод и меняет курсор мыши, когда я наводю курсор на ожидаемые текстовые поля. Если я нажимаю любую кнопку в «невидимом» виде, она мгновенно выскакивает.
Переключение с ContentControl
на ContentPresenter
не изменило вышеуказанное поведение.
Кто-нибудь знает, что происходит и как это исправить?
РЕДАКТИРОВАТЬ: Это похоже на ошибку в WPF, поэтому я надеюсь, что кто-то столкнулся с этой проблемой.
РЕДАКТИРОВАТЬ: Я отследил его до пользовательского окна заставки, точнее - до .Close()
, чтобы избавиться от окна. Если я использую .Hide()
вместо этого, сбой не происходит. До сих пор не понимаю, почему.