相关疑难解决方法(0)

Visual Studio项目属性中的各种"构建操作"设置是什么?它们的作用是什么?

在大多数情况下,您只需将Visual Studio为其设置的任何内容作为默认设置...我指的是在解决方案资源管理器中选择的每个文件的BuildAction属性.有很多选择,很难知道他们每个人会做什么.

projects-and-solutions visual-studio

827
推荐指数
6
解决办法
32万
查看次数

从不同的程序集加载合并的ResourceDictionary失败

我已将所有应用程序的ResourceDictionaries放入一个单独的程序集中,并将它们合并到一个ResourceDictionary中,我希望将其作为资源包含在我的应用程序中:

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
    <ResourceDictionary.MergedDictionaries>
        <ResourceDictionary Source="InputStyles.xaml"/>
        <ResourceDictionary Source="DataGridStyles.xaml"/>
        <ResourceDictionary Source="ComboboxStyles.xaml"/>
        <ResourceDictionary Source="CheckboxStyles.xaml"/>
        <ResourceDictionary Source="TabControlStyles.xaml"/>
        <ResourceDictionary Source="ButtonStyles.xaml"/>
    </ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
Run Code Online (Sandbox Code Playgroud)

声明资源:

<Window.Resources>
    <ResourceDictionary Source="pack://application:,,,/StyleAssembly;component/Styles.xaml"/>
</Window.Resources>
Run Code Online (Sandbox Code Playgroud)

在VS中查看设计器所有控件都显示文件中的样式,但是当我尝试启动应用程序时,我收到以下错误:

"找不到资源'inputstyles.xaml'."

所有文件的构建操作都设置为"页面",两个项目的构建都成功.我究竟做错了什么?

.net c# wpf xaml

11
推荐指数
1
解决办法
1万
查看次数

设计时错误查找资源字典 - 项目之间不一致

TLDR;

屏幕ResourceDictionary在运行时正确地引用VS2015样式的外部文件,但不是在设计时.是什么赋予了?


在工作中,我们有一个WinForms产品,其中包含许多 WinForms屏幕,一个开发人员主动添加新的屏幕,以及一些WPF屏幕,我添加了新的.在现有的WPF屏幕中注意到很多重复的代码/样式,我创建了一个单独的项目来容纳这个 - 由所有现有/未来的WPF屏幕引用.

项目: WpfHelper

  • 平台目标:任何CPU
  • 目标框架:.NET Framework 4.6
  • WpfHelper.dll 部署到 ...\Trunk\Project\Externals
  • ...\Trunk\Utilities\WpfHelper\WpfHelper\Resources\GlobalResources.xaml
    • 构建行动:页面
    • ResourceDictionary包含通用样式

我已...\Trunk\Project\Externals\WpfHelper.dll在六个项目中引用,将以下代码添加到每个资源文件中:

<ResourceDictionary.MergedDictionaries>
    <ResourceDictionary Source="pack://application:,,,/WpfHelper;Component/Resources/GlobalResources.xaml" />
</ResourceDictionary.MergedDictionaries>
Run Code Online (Sandbox Code Playgroud)

所有屏幕都位于...\Trunk\Project\Plugins.

????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
?          ? Resource Works? ? Platform Target ? Target Framework ? Reference File Path                            ?
????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
? Project1 ? Succeeded       ? Any CPU         ? .NET 4.6         ? ...\Project1\Project1\Resources\Resources.xaml ?
? Project2 ? Succeeded       ? x86             ? .NET 4.6         ? ...\Project2\Project2\Resources\Resources.xaml ?
? Project3 ? Succeeded       ? Any …
Run Code Online (Sandbox Code Playgroud)

c# wpf resourcedictionary visual-studio-2015

9
推荐指数
1
解决办法
988
查看次数