【问题标题】:Where should I place common string resource and common XAML ResourceDictionary in modular Prism WPF application?在模块化 Prism WPF 应用程序中,我应该在哪里放置公共字符串资源和公共 XAML ResourceDictionary?
【发布时间】:2016-02-22 15:49:55
【问题描述】:

在我的 Prism WPF 模块化应用程序中,我需要以下公共共享数据:1) 两个带有外壳窗口区域名称的字符串,2) 具有通用样式的单选按钮的 ResourceDictionary(在模块中定义)。下面是我的应用程序窗口运行时的屏幕截图。

以下是我的应用程序中的模块结构:

AuthorizationNavigationItemView.xaml 和 AuthorizationNavigationItemViewModel.cs 是“Athorization”单选按钮及其视图模型。 CalibrationNavigationItemView.xaml 和 CalibrationNavigationItemViewModel.cs 是“校准”单选按钮及其视图模型。稍后,模块(以及相应的单选按钮)的数量将达到 20 - 25 个,并且所有模块都需要以 common 样式放置在 common ResourceDictionary 中。除此之外,所有模块都需要公共资源 - 两个字符串,它们是外壳窗口中区域的名称:“MainNavigationRegion”和“MainContentRegion”。我应该在我的应用程序中的哪里放置公共 ResourceDictionary 和公共字符串资源?我们将非常感谢您的帮助。

【问题讨论】:

    标签: c# wpf mvvm prism


    【解决方案1】:

    这取决于你要如何处理这个Resource 文件。通常我将所有字符串/文本资源分开到独立的项目中。这是因为我的应用程序需要本地化、翻译等。所以这个文件将被其他人审查/更改。 StylesTemplates 资源也是如此——这是给设计师的。请注意,设计师通常会在 Blend 或其他工具中重新构建项目/解决方案,因此该资源项目应尽量减少对其他项目的引用(理想情况下不应引用其他任何内容)

    所以 - 如果您在一个团队中工作并且其他人将在您的应用程序中操作文本/字符串/样式/等。我建议您创建单独的独立项目,以便其他人可以轻松更改它。考虑到这个项目在交付过程中可能会很晚,所以你应该创建一些通用/不变的资源并使用它直到“真正的”文件进来

    【讨论】:

    • Jasper,你写过:“我建议你创建单独的、独立的项目”。它必须有什么类型:Common Project、Class Library、EmptyProject 还是什么?
    猜你喜欢
    • 1970-01-01
    • 2017-11-06
    • 2012-01-25
    • 2012-02-08
    • 2014-01-16
    • 1970-01-01
    • 2014-01-30
    • 1970-01-01
    • 2010-12-06
    相关资源
    最近更新 更多