gpt4 book ai didi

wpf - 将 View 显示为对话框

转载 作者:行者123 更新时间:2023-12-03 10:35:51 27 4
gpt4 key购买 nike

我使用devexpress混合wpf脚手架向导生成了完整的MVVM

具有集合 View 和单个对象 View 的应用程序。

现在,我正在努力想出如何从集合 View 中双击时使某些单个对象 View 弹出,作为MetroUI对话框,而不是带有后退按钮的框架。

最佳答案

我建议您使用IDialogSerivice及其WinUIDialogService实现来完成此任务。
由于您正在使用scaffolding,因此应进入收藏 View
(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);

关于wpf - 将 View 显示为对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29787445/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com