Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/272.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# 所选库的本地图像文件的URI_C#_Xaml_Windows Phone 8.1_Uri - Fatal编程技术网

C# 所选库的本地图像文件的URI

C# 所选库的本地图像文件的URI,c#,xaml,windows-phone-8.1,uri,C#,Xaml,Windows Phone 8.1,Uri,我的解决方案由两个项目组成: -Windows Phone 8.1应用程序 -Windows Phone 8.1类库 在应用程序中,我有一个XAML文件,其中包含一个名为MyControlTemplate的ControlTemplateMyControlTemplate具有 在我的类库中,我有一个页面,带有一个使用MyControlTemplate的控件MyControlTemplate使用DataContext类,该类具有Image属性,可将URI返回到包含图像的文件 带有图像的文件位于Ass

我的解决方案由两个项目组成:
-Windows Phone 8.1应用程序
-Windows Phone 8.1类库

在应用程序中,我有一个
XAML
文件,其中包含一个名为
MyControlTemplate
ControlTemplate
<代码>MyControlTemplate具有

在我的类库中,我有一个
页面
,带有一个使用
MyControlTemplate
的控件
MyControlTemplate
使用
DataContext
类,该类具有
Image
属性,可将
URI
返回到包含图像的文件

带有图像的文件位于
Assets
文件夹中,该文件夹在类库中本地设置

问题是,当绑定到
Image
属性以获取所选图像时,创建新
URI
的路径没有指向类库中的
Assets
文件夹

我目前的解决办法是:

private static Uri _baseUri = new Uri("ms-appx:///Assets");  
然后用于:

public Uri Image
    {
        get
        {
            return new Uri(SampleDataCommon._baseUri, this._picture);
        }
    }  
其中
this.\u picture
设置为
@.\Assets\cliff.jpg“

它实际上是有效的,即它从
Shared\Assets
项目文件夹中获取图像,但不是我想要实现的类库的
Assets
文件夹

有关于
URI
的帮助吗

谢谢大家!

如果您在C#中使用LinkedResource(),则很可能不会 选择您的相对URI或文件位置

您可以使用一些额外的代码

现在它将拾取相对路径,将其转换为绝对路径 在内存中,它将帮助您获得图像


看起来它将允许您以所需的方式链接图像。

这就是我解决问题的方法:

private static Uri _baseUri = new Uri("ms-appx:///nameOfTheProject/Assets/");

Assembly.getExecutionGassembly()
似乎无法在Windows Phone 8.1上运行
private static Uri _baseUri = new Uri("ms-appx:///nameOfTheProject/Assets/");