Я пытаюсь связать источник элемента со списком со статическим ресурсом. Я упрощаю свой пример, чтобы было легко понять, что я делаю.
Итак, я создал класс
public class A : ObservableCollection<string>
{
public A()
{
IKBDomainContext Context = new IKBDomainContext();
Context.Load(Context.GetIBOptionsQuery("2C6C1Q"), p =>
{
foreach (var item in SkinContext.IKBOptions)
{
this.Add(item);
}
}, null);
}
}
Таким образом, у класса есть конструктор, который заполняет себя, используя контекст домена, который получает данные из постоянной базы данных. Я только читаю в этом списке, так что не нужно беспокоиться о сохранении назад.
в xaml я добавляю ссылку на пространство имен этого класса, а затем добавляю его как usercontrol.resources в элемент управления страницей.
<UserControl.Resources>
<This:A x:Key="A"/>
</UserControl.Resources>
а затем я использую этот статический ресурс, чтобы привязать его к моему источнику элементов со списком. На самом деле мне нужно использовать шаблон данных для правильного отображения этого объекта, но я не буду добавлять это здесь.
<Combobox ItemsSource="{StaticResource A}"/>
Теперь, когда я в дизайнере, я получаю сообщение об ошибке:
Не удается создать экземпляр "A".
Если я компилирую и запускаю код, он работает нормально. Кажется, это влияет только на редактирование страницы xaml.
Что я делаю неправильно?