WPF DataGrid SelectedItems двусторонняя привязка - PullRequest
0 голосов
/ 24 марта 2019

Я пытаюсь связать несколько выборок из DataGrid с ViewModel, но изо всех сил пытаюсь найти решение, которое допускает двустороннее связывание, так как я считаю, что свойство SelectedItems DataGrid доступно только для чтения.

Сейчас я использую помощника от Prism, который позволяет одностороннюю привязку от View к ViewModel.

            <i:Interaction.Triggers>
                <i:EventTrigger EventName="SelectionChanged">
                    <prism:InvokeCommandAction 
                        Command="{Binding SelectionChangedCommand}"
                        CommandParameter="{Binding SelectedItems,
                        ElementName=PatchDataGrid}" />
                </i:EventTrigger>
            </i:Interaction.Triggers>

Это работает для односторонней привязки данных, но мое приложение позволяет пользователю делать выбор, используя всегда работающую службу (через CLI). Логика реализации заключается в добавлении элементов в SelectedItems ObservableCollection с использованием CLI, но (как и ожидалось, учитывая текущий подход), эти изменения не отражаются в пользовательском интерфейсе. Я не вижу способа вернуть эти изменения в интерфейс прямо сейчас, используя какой-либо подход, сохраняя при этом MVVM.

Я рассмотрел добавление свойства IsSelected к модели, но это не сработает, так как выбор должен выполняться для представления, а не для глобального свойства.

Я ищу совет от тех, кто уже прошел этот путь и нашел решение, которое соответствует MVVM с двухсторонним связыванием данных.

Заранее спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...