问题标签 [prism-6]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
731 浏览

c# - 将当前移动到数据网格

在我加载一个位置的客户列表后,我想选择一个特定的客户作为当前项目。当我尝试移动到当前项目时,没有选择任何项目。我已经(通过调试)验证了我想要移动到的项目存在。

如果我移动到当前项目

我的问题是“如何将当前项目焦点移动到我选择的特定项目?”。

0 投票
1 回答
85 浏览

c# - 是否可以禁用控件的数据绑定,直到它具有正确的 DataContext?

我有一个带有DetailViewModel对象列表的选择视图。When one of these is selected, it is passed to a detail view (derived from UserControl) using Prism view switching navigation. 因为详细视图是在加载模块时加载的,所以它会在导航到之前尝试绑定到环境数据上下文。

也就是说,当加载模块时,详细视图会加载到 中的区域中,并在导航期间设置其真实视图模型之前MainWindowView尝试绑定到。MainWindowViewModel我想首先防止这种错误的绑定,并且仅在将详细视图分配给它正确的视图模型时才绑定。这可能吗,怎么做?

如果做不到这一点,我是否只能在模块初始化后向区域注册视图,只有当我需要导航到该详细视图时?

0 投票
1 回答
911 浏览

wpf - 需要使用 wpf、prism 6、Unity 的示例应用程序并实现一个模块

找到的所有样本要么针对早期版本的 prism,要么当前不工作。我正在使用 Visual Studio 2015。我正在专门寻找使用 ViewmodelLocator.AutoWireViewModel 的示例

0 投票
2 回答
4548 浏览

c# - 如何在 WPF 中使用 Prism 6 处理 ViewModel 中的按键事件?

我有一种情况需要处理按键事件,它可以是 AZ、0-9 中的任何一个,但我需要在 ViewModel 中处理它。按下哪个键应该传递给 ViewModel。我使用的是 prism 6.0,因此 View1ViewModel 与 view1 自动连接。

我知道对于我可以处理的特定键,但如何对所有键执行相同操作。

我在 ViewModel“KeyPressed”中有一个属性,我在代码隐藏中尝试了下面的代码

但是此代码不会像在 Prism 框架视图模型中那样更新 View1ViewModel,并且视图绑定是通过框架进行的。我尝试使用交互,我将下面的代码放在根Grid部分。

该事件被触发,但由于没有 Command 参数,因此它为空。我需要传递一个命令参数,但不知道它应该是什么!

在视图模型中:

任何想法/建议我该如何处理?

0 投票
1 回答
4426 浏览

c# - 了解 PRISM 中的模块

我只是想确认我对棱镜模块的理解。

我的想法是一个模块可能包含许多具有许多视图的功能。

例如,我想创建包含以下功能的 UserManagement 模块,这些功能有自己的主视图

功能
* 用户列表
* 用户更新
* 更改密码

我对棱镜模块的理解正确吗?我将如何告诉模块管理器加载哪个功能?

还是我错了,每个模块只能有一个主视图?

0 投票
0 回答
236 浏览

prism - Prism 5 到 6.2 - InteractionRequest - InvocationList 在导航到新对象时不再为空

PRISM 6.2 / EntityFramework 6.3.1 / StockTrader UI / UnityContainer

我确实有一个使用 PRISM 5.0.0 的项目,并且想更新到 PRISM 6.2。该项目在 5.0.0 上运行良好,但是当我更新到 6.2 时,InteractionRequest 出现以下问题。

当我第一次导航到带有通知的视图/视图模型时,一切正常,我可以像往常一样处理交互请求。如果我导航回来并使用新对象再次导航到视图,则 InteractionsRequest 会引发两次通知。(...导航返回并再次访问 -> 提出三次,依此类推)。

由于某些原因,会出现“此 Visual 未连接到 PresentationSource”消息。

我发现,在 PRISM 6.2 中,InteractionRequest 上的 _invocationCount 和 _invocationList 不会设置为“0”/“null”。所以,我认为 InteractionRequest 会多次调用通知。附件是 PRISM 5 和 PRISM 6.2 的屏幕截图。

我该如何处理并解决问题。在我看来,这不是一件大事,但我实际上花了很多时间来寻找解决方案。谢谢...

PRISM 5.0.0 - 工作正常

棱镜 6.2 - 问题

2017.02.22 添加源代码。软件用于处理数据中心中的设备。我删除了所有不必要的源代码,但是这些文件仍然存在问题。也许这是试图找到我的问题....

Rackmodule.cs -> 初始化模块机架

RackSummaryViewModel.cs -> 机架概述。转到 RackDataView,单击对象时

RackDataViewModel.cs -> 只有按钮“保存”和“返回”

GeneralDataViewModel.cs -> 在带有机架数据的 RackDataView 区域中

0 投票
1 回答
2270 浏览

c# - WPF - PRISM:如何通过单击按钮关闭 CustomPopupWindow

这个在和我玩,我似乎无法弄清楚 - 我需要一些外部帮助,兄弟!

我想要一个没有标题、最小化、最大化和关闭按钮的弹出窗口,因为我们想自己设置样式并在弹出窗口的屏幕上添加自定义关闭按钮。

所以我按照这些链接找到了我现在的位置:

https://msdn.microsoft.com/en-us/library/ff921081(v=pandp.40).aspx https://msdn.microsoft.com/en-us/library/gg405494(v=pandp.40) .aspx https://www.codeproject.com/Articles/269364/MVVM-PRISM-Modal-Windows-by-using-Interaction-Requ

但我仍然无法弄清楚如何实现这一目标。基本窗口有“确定”和“取消”按钮,但这些是默认设置,我不希望这样,这就是我采用“自定义视图”方式的原因。

这是我的主窗口的 xaml:

这里是主窗口的代码:

InteractionRequestTriggerSourceObject 是一个 UserControl。

这是它的xaml:

如您所见,我在 UserControl 中有一个“关闭”按钮。

我尝试使用命令,但即使那样我也无法访问窗口或执行某些操作来关闭窗口。

是否有某种棱镜命令或我不知道的东西?

是否可以使用按钮以我想要的方式关闭窗口?

任何帮助将不胜感激!:)

0 投票
1 回答
187 浏览

wpf - Prism NotificationRequest 与 Xceed MessageBox

当我们使用 MVVM 时,我们被告知要避免在 ViewModel 中使用 System.Windows.MessageBox,我猜这是因为它不利于我们的测试。这是真的吗?

使用 Prism NotificationRequest,我们可以与用户交流,但它比简单的 MessageBox 稍微复杂一些。

另一种方法是使用 Xceed Wpf Toolkit MessageBox,它比 Prism NotificationRequest 更简单。

我的问题是:它们都等价吗?我们可以以 MVVM 方式使用它们中的任何一个吗?如果否,我们什么时候需要使用 NotificationRequest,什么时候可以使用 Xceed MessageBox?

谢谢

0 投票
1 回答
1873 浏览

c# - 如何使用 Unity 和 Prism 按约定注册类型?

我有一个 WPF 应用程序,它使用Prism.WpfPrism.UnityNuGet 包(两者6.3.0)。我目前正在引导程序类(见下文)中手动在 Unity 容器中注册类型,并且一切正常。

但是,当我尝试按约定Microsoft.Practices.Unity.DuplicateTypeMappingException注册类型时,在 Unity 容器中注册类型时会得到一个。

按约定注册的代码:

异常消息:

An attempt to override an existing mapping was detected for type Prism.Regions.IRegionNavigationContentLoader with name "", currently mapped to type Prism.Unity.Regions.UnityRegionNavigationContentLoader, to type Prism.Regions.RegionNavigationContentLoader.

使用 Prism & Unity 时如何按约定注册类型?

0 投票
0 回答
150 浏览

c# - 如何从另一个类中更改一个类中变量的值?

请原谅我的无知,因为我是 C# 新手。

我目前正在开发一个 MVVM 项目,其中视图模型具有多个实例化的公共变量,这些变量与视图中的元素 (WPF) 进行数据绑定。当这些变量发生变化时,它们在我看来会自动更新。以我的视图模型中的以下代码段为例...

通过使用命令DisplayBind = "Hello"; 在我的视图模型中,我可以将文本推送到我位于 XAML 视图中的文本框。不幸的是,我已经到了不能简单地编辑 DisplayBind 的值的地步。

我需要在我的视图模型中启动一个状态机,它将访问不同 C# 文件中的多个状态(类)。但是,我不知道如何接收,更重要的是从这些单独的类中编辑我的视图模型中的值。

我使用这个在我的视图模型中启动我的状态机......

这是我的 IPMProgram 课程

这是我的 IPMProgramState 类

这是我的 BootBannerState 类(我想从中编辑 DisplayBind 的状态)

有人建议我应该研究依赖注入,但我不太明白它对我的工作原理。我应该怎么办?

谢谢大家的帮助,

泰斯尼希