У меня была похожая проблема, и я решил ее, поэтому решил, что могу также опубликовать свое решение. Я продолжал получать ошибку Resource not found
только во время выполнения, как описано выше. В моем приложении Windows 8.1 c # я использовал стиль, который я определил, и он хорошо отображался в Blend и в представлении конструктора, но не работал во время выполнения. Я пытался использовать этот стиль в настройках, которые я создал, следуя этим инструкциям . После того, как это сработает, я настроил поле в App.xaml для удержания моих всплывающих окон (Preferences и ColorSettings), чтобы я не делал новые каждый раз.
public static Preferences preferences;
public static ColorSettings colorsettings;
public App()
{
this.InitializeComponent();
this.Suspending += OnSuspending;
preferences = new Preferences();
colorsettings = new ColorSettings();
}
Поработав и погуглив около часа, я понял, что создавал всплывающие окна слишком рано, и когда они создавались, они не могли получить доступ к ресурсам приложения. Поэтому я переместил их создание на App.OnLaunched()
, и это решило проблему.
Я не уверен, что это лучший способ, но это сработало. Итак, попытайтесь определить, где вы пытаетесь получить доступ к нужным ресурсам, и если вы, возможно, пытаетесь сделать это слишком рано. Извините за неопределенность и, возможно, за неправильность, я действительно новичок в WPF.