Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/298.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.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# Windows phone空映像错误_C#_Wpf_Xaml_Windows Phone 8 - Fatal编程技术网

C# Windows phone空映像错误

C# Windows phone空映像错误,c#,wpf,xaml,windows-phone-8,C#,Wpf,Xaml,Windows Phone 8,我正在为windows phone开发一个应用程序,它基本上包括手机联系人。我使用contacts类获取所有电话联系人,并将联系人数据存储在独立存储器中。因为我无法序列化图像,所以在序列化之前我将它们转换为字节[]。我的代码是: foreach(e.Results中的var结果) { if(result.PhoneNumbers.FirstOrDefault()!=null) { BitmapImage bmp2=新的BitmapImage(); bmp2.SetSource(result.Ge

我正在为windows phone开发一个应用程序,它基本上包括手机联系人。我使用contacts类获取所有电话联系人,并将联系人数据存储在独立存储器中。因为我无法序列化图像,所以在序列化之前我将它们转换为字节[]。我的代码是:

foreach(e.Results中的var结果)
{
if(result.PhoneNumbers.FirstOrDefault()!=null)
{
BitmapImage bmp2=新的BitmapImage();
bmp2.SetSource(result.GetPicture());
添加(新地址簿()
{
FirstName=result.DisplayName??“”,
imageBytes=AddressBook.imageConvert(bmp2),
电子邮件地址=”,
LastName=“”,
Phone=result.PhoneNumbers.FirstOrDefault().PhoneNumber??“”,
});
}
}
当联系人没有图片时,会在行上显示参数null异常错误:

bmp2.SetSource(result.GetPicture());
所以当联系人图像为空时,我想使用一些自定义图像(“/Images/ci2.png”或任何空白图像也可以)。 我的xaml代码是:


我的问题是,我如何使用自定义图像时

 bmp2.SetSource(result.GetPicture());

是空的吗?谢谢

快速查看此内容,您能不能:

if (result.GetPicture() != null)
{
     bmp2.SetSource(result.GetPicture());
}
else
{
     bmp2.SetSource(Application.GetResourceStream(new Uri(@"Images/ci2.png", UriKind.Relative)).Stream);
}

如果没有,我已经为此实施了一个不同的解决方案,并且可能会发布一些更详细的信息。

快速查看这一点,您就不能:

if (result.GetPicture() != null)
{
     bmp2.SetSource(result.GetPicture());
}
else
{
     bmp2.SetSource(Application.GetResourceStream(new Uri(@"Images/ci2.png", UriKind.Relative)).Stream);
}
如果没有,我已经为此实现了一个不同的解决方案,并且可能会发布一些更详细的信息。

我发现了两个问题

<Ellipse.Fill>
    <ImageBrush Stretch="Fill" ImageSource="{Binding imageByte, Converter={StaticResource BytesToImageConverter}}"/>
</Ellipse.Fill>
imageBytes!=imageByte

除非你没有显示完整的代码

就像另一张海报所说的,从资源文件中设置它。他的代码将导致错误,因为它包含一个额外的“/”,所以将其更改为

if (result.GetPicture() != null)
{
     bmp2.SetSource(result.GetPicture());
}
else
{
     bmp2.SetSource(Application.GetResourceStream(new Uri(@"Images/ci2.png", UriKind.Relative)).Stream);
}
我看到两个问题

<Ellipse.Fill>
    <ImageBrush Stretch="Fill" ImageSource="{Binding imageByte, Converter={StaticResource BytesToImageConverter}}"/>
</Ellipse.Fill>
imageBytes!=imageByte

除非你没有显示完整的代码

就像另一张海报所说的,从资源文件中设置它。他的代码将导致错误,因为它包含一个额外的“/”,所以将其更改为

if (result.GetPicture() != null)
{
     bmp2.SetSource(result.GetPicture());
}
else
{
     bmp2.SetSource(Application.GetResourceStream(new Uri(@"Images/ci2.png", UriKind.Relative)).Stream);
}

谢谢你的回复。上面的方法不起作用,然后我删除了除bmp2.SetSource(Application.GetResourceStream(newURI(@/Images/ci2.png),UriKind.Relative)).Stream)之外的所有代码;}。但我还是犯了同样的错误。看起来这条线一点效果都没有。还有什么建议吗?当我在手机上部署它时,它抛出了一个错误:“system.outofMemoryException”有什么想法吗?在我的脑海中-可能是你的图像转换器代码,但我也会检查ci2.png是否部署到了设备上,是否在正确的位置。你在用什么设备?它是低端的吗?是的,我使用的是低端设备,可能这就是为什么它在我的模拟器上运行良好,但在我的手机上运行不好。有什么方法可以避免这个异常吗?提示-让IsoStoreSpy查看设备上有哪些文件:谢谢你的回复。上面的方法不起作用,然后我删除了除bmp2.SetSource(Application.GetResourceStream(newURI(@/Images/ci2.png),UriKind.Relative)).Stream)之外的所有代码;}。但我还是犯了同样的错误。看起来这条线一点效果都没有。还有什么建议吗?当我在手机上部署它时,它抛出了一个错误:“system.outofMemoryException”有什么想法吗?在我的脑海中-可能是你的图像转换器代码,但我也会检查ci2.png是否部署到了设备上,是否在正确的位置。你在用什么设备?它是低端的吗?是的,我使用的是低端设备,可能这就是为什么它在我的模拟器上运行良好,但在我的手机上运行不好。有什么方法可以避免这个异常吗?一个提示-让IsoStoreSpy看看设备上有什么文件:@Chubosaurus软件谢谢它工作了,但是当我在手机上部署它时,它抛出了一个错误:“system.outofMemoryException”@Chubosaurus软件谢谢它工作了,但是当我在手机上部署它时,它抛出了一个错误:“system.outofMemoryException”