Я использую Prism и Unity для перезаписи приложения WPF с использованием шаблона MVVM.Большинство представлений подключаются к виртуальной машине через свойство DataContext, например:
<UserControl.DataContext>
<VM:RibbonViewModel/>
</UserControl.DataContext>
Проблема в том, что этот метод не будет работать, если в конструкторе ViewModel есть параметр.
public RibbonViewModel(IEventAggregator eventAggregator)
{
this.eventAggregator = eventAggregator;
}
Я получаю сообщение об ошибке:
Тип 'RibbonViewModel' не может использоваться как элемент объекта, поскольку он не является общедоступным или не определяет открытый конструктор без параметров или преобразователь типа.
Как подключить виртуальную машину к представлению, если там есть параметр?