Я предлагаю вам использовать IDialogSerivice, и это реализация WinUIDialogService для выполнения этой задачи. Поскольку вы используете scaffolding, вы должны пойти в вашей точки зрения сбора (YouEntityCollectionView.xaml
) и перейти в Behaviors
раздел:
<dxmvvm:Interaction.Behaviors>
<dxwui:WinUIMessageBoxService/>
<dxmvvm:EventToCommand Command="{Binding OnLoadedCommand}" />
<WindowedDocumentUIService YieldToParent="True"/>
</dxmvvm:Interaction.Behaviors>
Добавьте услугу в этом разделе:
<dxmvvm:Interaction.Behaviors>
<dxwui:WinUIMessageBoxService/>
<dxmvvm:EventToCommand Command="{Binding OnLoadedCommand}" />
<dxwui:WinUIDialogService />
</dxmvvm:Interaction.Behaviors>
После того, что вы должны замените IDocumentManagerService
на IDialogService
в коде CollectionViewModel
. Он может выглядеть следующим образом:
// Edit:
//DocumentManagerService.ShowExistingEntityDocument<TEntity, TPrimaryKey>(this, primaryKey);
this.GetService<IDialogService>().ShowDialog(MessageButton.OKCancel, null, typeof(TEntity).Name + "View", primaryKey, this);
// New:
//DocumentManagerService.ShowNewEntityDocument(this, newEntityInitializer);
this.GetService<IDialogService>().ShowDialog(MessageButton.OKCancel, null, typeof(TEntity).Name + "View", newEntityInitializer, this);
Вы хотите открыть диалог с вашей модели? – blindmeis
Я хочу, чтобы представление отображалось как диалог. –
thats я использую http://stackoverflow.com/questions/3801681/good-or-bad-practice-for-dialogs-in-wpf-with-mvvm – blindmeis