gpt4 book ai didi

c# - 从图像资源动态加载 ImageSource 时图像损坏

转载 作者:太空宇宙 更新时间:2023-11-03 16:59:19 26 4
gpt4 key购买 nike

我有一个 WPF 登录屏幕,我想将启动图像动态加载到其中。大多数情况下图像加载正常,但可能有十分之一的图像显示损坏,如下所示。

在 XAML 中,我有一个简单的图像控件。

<Image x:Name="imgLogonSplash" Stretch="None" Width="800" Height="489"/>

我是通过绑定(bind)在我的 View 模型中执行此操作的,但为了简单起见,现在我的代码中有这一行。

imgLogonSplash.Source = new BitmapImage(new Uri($"pack://application:,,,/Company.myapp;component/{splashImagepath}"));

上面的 SplashImagePath 提供了要加载的图像的名称。图像是主程序集中的 .png 文件并标记为“资源”。

我已经尝试了几种方法来加载图像,包括在下面的 View 模型中加载图像。任何人都可以阐明为什么这不能正常工作吗?

BitmapImage image = new BitmapImage();
image.BeginInit();

string imageUri = $"pack://application:,,,/Company.myapp;component/{splashImagePath}";

image.UriSource = new Uri(imageUri, UriKind.Absolute);

image.EndInit();
return image;

corrupted image example

最佳答案

我会检查您正在使用的图像的分辨率(可能是图像文件的大小),如果它们非常大并且您运行此应用程序的系统没有硬件内存(图形)来渲染图片。

尝试使用简单但尺寸较小的图像。

希望这对您有所帮助。

关于c# - 从图像资源动态加载 ImageSource 时图像损坏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50045927/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com