Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在模块化Prism WPF应用程序中,我应该将公共字符串资源和公共XAML资源字典放在哪里?_C#_Wpf_Mvvm_Prism - Fatal编程技术网

C# 在模块化Prism WPF应用程序中,我应该将公共字符串资源和公共XAML资源字典放在哪里?

C# 在模块化Prism WPF应用程序中,我应该将公共字符串资源和公共XAML资源字典放在哪里?,c#,wpf,mvvm,prism,C#,Wpf,Mvvm,Prism,在我的Prism WPF模块化应用程序中,我需要以下公共共享数据:1)具有shell窗口区域名称的两个字符串,2)具有单选按钮(在模块中定义)公共样式的ResourceDictionary。下面是我的应用程序窗口运行时的屏幕截图 下面是我的应用程序中的模块结构: AuthorizationNavigationItemView.xaml和AuthorizationNavigationItemViewModel.cs是“Athorization”单选按钮及其相应的视图模型。Calibration

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

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


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

这取决于您将如何使用此
资源
文件。通常我将所有字符串/文本资源分离到独立的项目中。这是因为我的应用程序需要本地化、翻译等。。因此,其他人将审查/更改此文件。因此,
样式
模板
资源也是如此-这是为设计师准备的。请注意,设计师通常使用Blend或其他工具重新构建项目/解决方案,因此此资源项目应尽量少引用其他项目(理想情况下,它不应引用任何其他项目)


因此-如果您在团队中工作,其他人将操纵文本/字符串/样式/等等。。在你的应用程序中,我建议你创建一个独立的项目,这样其他人就可以轻松地更改它。考虑到这个项目在交付过程中可能会很晚,所以您应该创建一些通用/不变资源,并使用它直到“真实”文件出现,这取决于您将如何处理这个
资源
文件。通常我将所有字符串/文本资源分离到独立的项目中。这是因为我的应用程序需要本地化、翻译等。。因此,其他人将审查/更改此文件。因此,
样式
模板
资源也是如此-这是为设计师准备的。请注意,设计师通常使用Blend或其他工具重新构建项目/解决方案,因此此资源项目应尽量少引用其他项目(理想情况下,它不应引用任何其他项目)

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

Jasper,您写道:“我建议您创建单独的、独立的项目”。它必须有什么类型:公共项目、类库、EmptyProject还是什么?Jasper,你写过:“我建议你创建单独的、独立的项目”。它必须有什么类型:公共项目、类库、EmptyProject还是什么?