У меня есть приложение WPF, в которое я добавил свой собственный Sub Main () для некоторой обработки и отображения анимированного заставки перед загрузкой главного окна.Часть процесса для выполнения этой работы заключалась в изменении действия Build для Application.xaml на «Page», а не «ApplicationDefinition».
Все работает хорошо во время выполнения, но в конструкторе VS мое главное окно имеетпроблемы с загрузкой пользовательских элементов управления на его поверхность.Если посмотреть глубже, то кажется, что пользовательский элемент управления не может найти ресурс стиля, расположенный в ресурсах Application.xaml - по крайней мере, во время разработки.Во время выполнения не возникает никаких проблем.
Я предполагаю, что каким-то образом переход от 'AppicationDefinition' к 'Page' для действия по сборке Application.xaml каким-то образом отключил способность приложения загружать ресурсы во время разработки.
Здесь есть статья , в которой описывается та же проблема, что и у меня, но решение было неправильно помечено как ответ, поскольку оно явно не решает проблему времени разработки.Другой человек ответил, но это решение состояло в том, чтобы просто создавать экземпляры ресурсов повсюду, а не в одном месте - не то, что я хочу.
Я нашел статью Джоша Смита здесь , в которойкажется очень многообещающим в отношении выполнения собственного кода, когда приложение загружается во время разработки, но я не знаю, что добавить после кода раздела «TODO».Я думаю, как-то вызвать компонент Initialize для моего класса Application, но он не создается во время разработки ... верно?
'In AssemblyInfo.vb
<AttributeUsage(AttributeTargets.Assembly)> _
Class DesignTimeBootstrapperAttribute
Inherits Attribute
Public Sub New()
Dim dep = New DependencyObject()
If DesignerProperties.GetIsInDesignMode(dep) Then
' TODO: Design-time initialization…
'Not sure how to get application level resources to load at design time?
End If
End Sub
Итак, мой вопрос: как заставить приложение инициализировать изагрузить ресурсы в application.xaml во время разработки, чтобы мой дизайнер правильно отображал стилизованные пользовательские элементы управления?Или, в качестве альтернативы, как я могу объявить эти глобальные ресурсы, чтобы они работали как во время проектирования, так и во время выполнения?