Я использую элемент управления ReportViewer
от Microsoft в своем приложении WPF. Поскольку это компонент WinForms, я использую элемент управления WindowsFormHost.
Я пытаюсь следовать шаблону MVVM, поддерживаемому WPF Application Framework , поэтому я реализовал ReportViewModel
, который содержит (помимо прочего) имя текущего отчета и набор данных (оба могут быть выбраны с помощью «обычные» элементы управления WPF, эта часть работает нормально).
Я бы хотел быть как можно более "WPF-иш", так как бы мне правильно настроить привязку к компоненту ReportViewer (который находится внутри элемента управления WindowsFormHost)? Мне нужно установить свойство ReportViewer.LocalReport.ReportEmbeddedResource
и вызывать ReportViewer.LocalReport.DataSources.Add
(и, возможно, Clear
) всякий раз, когда в моделях представления сообщается об изменении имени или набора данных. Какой правильный способ сделать это?
Есть ли шанс использовать для этого один из обычных механизмов связывания WPF? Если да, то как? Если нет, как бы я настроил привязку? (это мой первый «настоящий» проект WPF, так что не стесняйтесь публиковать тривиальные решения :) ...)
Спасибо!