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
从另一个程序集运行WPF应用程序_Wpf_Resources_Appdomain - Fatal编程技术网

从另一个程序集运行WPF应用程序

从另一个程序集运行WPF应用程序,wpf,resources,appdomain,Wpf,Resources,Appdomain,我想从另一个程序集“B”运行wpf应用程序“A” 我使用以下代码: static void main() { var app = new A.App(); app.InitializeComponent(); app.Run(); } 当我运行我的应用程序时,出现以下错误: Cannot convert string '/Resources/icon.gif' in attribute 'Icon' to object of type 'System.Windows.Media.

我想从另一个程序集“B”运行wpf应用程序“A”

我使用以下代码:

static void main() 
{
  var app = new A.App();
  app.InitializeComponent();
  app.Run();
}
当我运行我的应用程序时,出现以下错误:

Cannot convert string '/Resources/icon.gif' in attribute 'Icon' to object of type 'System.Windows.Media.ImageSource'. Cannot locate resource 'resources/icon.gif'.  Error at object 'MainWindow' in markup file 'A;component/shell/shellview.xaml'.
如何将B图像和资源信息传输到A?
谢谢

您正在使用包URI吗

您可以使用包URI语法访问嵌入在其他程序集中的资源。以下示例演示用于访问其他程序集中嵌入资源的基本包URI语法:

pack://application:,,,/;组成部分//

因此,如果您想在另一个名为myAssembly的程序集中的文件夹myFolder中找到名为myPic.bmp的文件,您将使用以下包URI:

pack://application:,,,/myAssembly;组件/myFolder/myPic.bmp

与其他包URI一样,如果文件夹中不存在嵌入的文件,则URI中会忽略该文件夹

尝试使用类似以下内容:

<ResourceDictionary.MergedDictionaries>
<ResourceDictionary
Source="CustomControls.Controls;component\Themes/...."
/>
</ResourceDictionary.MergedDictionaries>

今天我遇到了同样的问题,我解决了这个问题,只需:

Source="../../Resources/name.jpg"

这样,我必须修改wpf应用程序“A”中的所有资源引用。相反,如果有一种方法可以修改您最终使用的相对搜索路径,那就太好了?