问题标签 [prism-2]
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.
silverlight - Prism V2 不适用于 Silverlight 3.0
我目前正在使用 Prism v2 进行 Silverlight 应用程序。但是当我添加参考 dll 时,两个 dll 没有被识别。
任何人都可以为此提供解决方案吗?
wpf - WPF MVVM 对话框示例
有没有人有任何使用 MVVM (Prism) 显示窗口对话框的例子?- 例如,执行命令时的配置设置窗口。
我见过的所有示例都使用了很好的中介模式,但它们也都引用了视图模型中的视图,这并不理想(我们使用的是 DataTemplates)
谢谢
wpf - 复合 WPF 和 AvalonDock
有没有人一起尝试过 PRISM 和 AvalonDock(带有 DocumentSource 属性的最新版本)?我已经看过http://www.youdev.net/post/2009/07/17/AvalonDock-Documents.aspx但它只是简要介绍了如何使用 documentsource 属性。请帮忙,如果有人试过这个。
我想知道
1.DocumentSource属性如何关联不同区域?
2.我们可以只将 DocumentContent 的集合分配给 DocumentSource 属性吗?可停靠内容呢?
谢谢和问候,维沙尔。
prism - 将 scatterview 用作 Prism 的区域会引发异常
我正在玩 Surface,我正在尝试使用 scatterview 作为模块区域。
发生的情况是,当我运行应用程序时,会引发异常。稍微反思一下,我就到了异常发生的地方:
DelayedRegionCreationBehavior
尝试创建区域:
然后ItemsControlRegionAdapter
尝试设置区域目标ItemsSource
:
scatterview 触发 ItemsSource 更改和类的通知ItemsControlHelper
:
我认为GetItemsControlItems
返回null,导致异常。
关于如何克服这种情况的任何想法?
c# - Silverlight Prism - 成功登录后加载模块/模块之间的依赖关系
我有一个 Silverlight Prism 应用程序,其中包含一个带有登录控件的工具栏模块。我目前在 Bootstrapper 的主区域中有一个模块设置为InitializationMode.OnDemand ,并且可以在工具栏模块成功登录后通过ModuleManager.LoadModule()加载它。但是,这感觉不对,因为它本质上将工具栏模块与登录后加载的模块紧密耦合。
现在的问题...这是最佳实践,还是我应该从工具栏模块引发CompositePresentationEvent并让外壳加载适当的模块?或者还有其他选择吗?我正在构建此应用程序以尝试了解有关 Prism 的更多信息,并且我想确保我尽可能地遵循最佳实践。
prism-2 - Prism ModuleDependency ModularityException
我正在创建一个简单的 Prism 2.1 演示,它使用“目录搜索”方法来填充模块目录。我的 shell 设置了一个 Windows Explorer UI;它有一个 Navigator 区域和一个 Workspace 区域。我创建了一个 NavigatorModule 和两个工作区模块,WorkspaceAModule 和 WorkspaceBModule。我已经声明了从 NavigatorModule 到两个工作区模块的依赖关系。
我收到带有以下消息的 ModularityException:“一个模块声明了对另一个未声明加载的模块的依赖项。缺少模块:WorkspaceBModule、WorkspaceAModule。” 两个工作区模块都不是按需加载的,因此我不确定为什么会收到此错误。如果我从 NavigatorModule 中删除依赖项,问题就会消失。
有什么想法或建议吗?谢谢。
这是导航器:
这是工作区A:
这是工作区B:
prism - Prism 2.1 发布/订阅弱引用?
我正在构建一个 Prism 2.1 演示以跟上该技术的速度。我遇到了通过事件聚合服务发布和订阅的 CompositePresentationEvents 的问题。如果我设置一个强引用(KeepSubscriberReferenceAlive = true),事件订阅工作正常,但如果我设置一个弱引用(KeepSubscriberReferenceAlive 省略),它会失败。
我想订阅一个弱引用,这样我就不必管理取消订阅事件。有没有办法做到这一点?为什么这里需要强引用?谢谢你的帮助!
以下是详细信息:我的演示应用程序是单线程的,有两个区域,Navigator 和 Workspace,以及三个模块,NavigatorModule、WorkspaceAModule 和 WorkspaceBModule。NavigatorModule 有两个按钮,“显示工作区 A”和“显示工作区 B”。单击其中一个按钮时,将调用一个发布名为 ViewRequested 的 CompositePresentationEvent 的 ICommand。该事件携带一个字符串有效负载,指定应显示哪个工作区模块。
以下是来自应用的基础设施项目的事件声明:
这是来自 Navigator 模块的事件发布代码:
这是事件订阅代码,每个 Workspace 模块都包含在其 Initialize() 方法中:
Subscribe() 语句与强引用一起显示。
再次感谢您的帮助。
prism - 在 Prism 模块中更改视图?
所以我有一个 PRISM v2 (MV-VM) 应用程序启动并运行。这是加载到选项卡控件中的 4 个模块。伟大的。现在我的问题是——从这里去哪里?大多数教程似乎在这一点上停止。
也许我想多了,但似乎我需要每个模块都是它自己的 PRISM 应用程序,但这是不对的。
请帮助 PRISM n00b 找出从这里到哪里去。
我接下来要做的事情:每个选项卡(模块)都有自己的带有按钮的工具栏等。单击按钮应更改工具栏下方的内容(视图)。如何使用 PRISM(正确)实现这一点?每个模块(选项卡)都应该控制其内容,但是,单击一个选项卡中的某些按钮可能会触发另一个选项卡中的事件(因此使用 PRISM)。
那么在模块内更改视图的正确 PRISM 方法是什么?
silverlight-3.0 - 将 Prism 模块添加为 Silverlight 类库
我正在构建一个基于 Prism 2.1 版本的 silverlight 项目。
- 添加了一个外壳
- 添加了 silverlight 类库(模块 A)
- 向 shell 添加了模块 A 的引用
- 在 Prism ModuleCataloge 的引导程序中添加了 ModuleA 一切正常。
我想通过 XAML 文件加载模块。- 向外壳添加了 ModulesCatalog.xaml - 从外壳中删除了 ModuleA 引用。- 将 ModuleA 配置添加到 ModulesCatalog.xaml。- 使用配置语句更改为引导程序代码 (ModuleCatalog.CreateFromXaml())
当我运行该项目时,它说 ModuleA 不存在。我认为这是因为它不存在于 silverlight bin 库中。怎么能解决问题。
提前致谢...
c# - WPF 和 Prism 视图叠加
我需要一些帮助来使用 prism 框架覆盖视图。它比这更复杂一些,所以让我解释一下。我也可能会过度思考:D
我有外壳(wpf 窗口),并且在一个模块中有 2 个视图(A 和 B - 两个用户控件)。当外壳加载时,它会加载视图 A。在视图 A 上,我有一个按钮可以“弹出”视图 B 以供某些用户输入。所以很自然地我会想到某种模式窗口/控件,甚至可能是一个弹出窗口。但是我面临的弹出窗口的问题是,当我移动外壳时,弹出窗口保持固定并且它不会阻止视图 A 中的事件。我尝试禁用视图 A 以停止触发事件,并且我也尝试使用让视图 B 随外壳移动。只有画布有效,但我现在需要一种方法来阻止它。无论如何我可以用棱镜将一个视图覆盖在另一个视图之上吗?或者其他人如何使用 prism 和 wpf 创建模态弹出窗口?任何建议或指针将不胜感激。