У меня есть пользовательский контроль в общем проекте (resource dictionary in shared project).Дизайнер XAML не может найти ресурс
Все отлично работает в режиме исполнения, XAML дизайнер однако бросает исключение:
Не удается найти ресурс 'mycontrol.xaml'.
Проблема возникает, когда стиль загрузки для управления:
public class MyControl: Control
{
public MyControl()
{
Resources = new ResourceDictionary() { Source = new Uri("pack://application:,,,/mycontrol.xaml") };
Style = (Style)Resources["somekey"];
}
}
Почему это работает во время выполнения и не во время разработки?
Я могу определить время разработки, но что тогда делать?
Если ресурс находится в той же сборке, вам не нужно указать пространство имен. Посмотрите https://msdn.microsoft.com/en-US/library/aa970069(v=vs.110).aspx#Resource URI файлов файлов – c0d3b34n
К моему большому удивлению, этот синтаксис делает дизайнера счастливым. Я использовал его раньше, но он требовал сборки, которая в случае совместного проекта является проблемой, но не вашей проблемой;). Благодарю. – Sinatr