将 byte[] 转换为 Windows.UI.Xaml.Media.Imaging.BitmapImage

2024-02-29

使用通用 Windows 应用程序并尝试绑定 xaml 中字节数组的图像。我有点失落。在 xaml 中我有类似的内容:

<Image Source="{Binding SelectedImageSource}"
           Stretch="UniformToFill"
           Grid.Row="1"/>

在我的视图模型中我有

private byte[] _selectedImageSource;
    public byte[] SelectedImageSource
    {
        get { return _selectedImageSource; }
        set
        {
            _selectedImageSource = value;
            OnPropertyChanged(nameof(SelectedImageSource));
        }
    }

但我这里看不到图像。我认为我需要做的是将 byte[] 转换为 Windows.UI.Xaml.Media.Imaging.BitmapImage。我不是 100% 确定如何做到这一点,以及这是否是正确的做法。


尝试这个:

public static async Task<BitmapImage> GetBitmapAsync(byte[] data)
{
    var bitmapImage = new BitmapImage();

    using (var stream = new InMemoryRandomAccessStream())
    {
        using (var writer = new DataWriter(stream))
        {
            writer.WriteBytes(data);
            await writer.StoreAsync();
            await writer.FlushAsync();
            writer.DetachStream();
        }

        stream.Seek(0);
        await bitmapImage.SetSourceAsync(stream);
    }

    return bitmapImage;
}

您也可以尝试更简单的版本此处描述 https://social.msdn.microsoft.com/Forums/en-US/b5cb7ecf-3f04-42ac-815e-c104582ab8ac/uwpconvert-byte-array-to-windowsuixamlmediaimagingbitmapimage?forum=wpdevelop,但我认为我遇到了一些问题,这就是我现在使用上面的代码的原因。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 byte[] 转换为 Windows.UI.Xaml.Media.Imaging.BitmapImage 的相关文章

  • 如何指定 set precision 舍入

    当流到 std 输出时 我可以指定 set precision 对双精度值进行舍入吗 ofile lt lt std setprecision 12 lt lt total run time TIME lt lt n Output 0 75
  • TFS API - 缓慢的 foreach 变更集迭代

    问题背景 我正在使用 TFS api 查询 TFS 服务器上的大范围 1 600 文件 我从每个文件中收集其所有 ChangesetId 然后将其收集在列表中 代码 这是我正在使用的代码 它可以正确生成 QueryHistory 方法中指定
  • 了解 VerQueryValue

    在 MSDN 上 我注意到 VerQueryValue 函数的以下内容 lplp缓冲区 输出 低电压空洞当此方法返回时 包含指向 pBlock 指向的缓冲区中所请求版本信息的指针的地址 当关联的 pBlock 内存被释放时 lplpBuff
  • 在单个 C# 泛型方法中返回可为 null 和 null?

    C 泛型方法是否可以返回对象类型或 Nullable 类型 例如 如果我有一个安全的索引访问器List我想返回一个值 稍后我可以使用以下任一方法检查该值 null or HasValue 目前我有以下两种方法 static T SafeGe
  • C++11 中具有 C 链接的复杂类型

    我需要将 C 库的标头包含到我的 C 11 代码中 现在 标头提供了涉及大量的例程和数据结构double complex到处都是 例如 include
  • 使用 strcpy 从整数生成指针,无需进行强制转换

    我不明白我做错了什么 我正在学习 C 很抱歉 如果这显然是错误的 但我正在尝试使用uthash http uthash sourceforge net 制作股票及其价格的哈希图 但是当我将股票添加到哈希映射时 我收到上述错误 我所做的就是从
  • 在 PHP 扩展中,推荐从 std::string 返回值的方法

    我们有一个简单的 PHP 函数 其目的是调用 C 自由函数std string callLibrary std string 并返回其std string返回值 目前看起来是这样的 PHP FUNCTION call library cha
  • 如何让BackgroundWorker返回一个对象

    我需要做RunWorkerAsync 返回一个List
  • .NET:EventHandler 竞争条件修复如何工作?

    以下模式用于在引发事件时避免竞争条件 以防另一个线程取消订阅 MyEvent 使其为空 class MyClass public event EventHandler MyEvent public void F EventHandler h
  • 起订量工作单元

    我是单元测试的新手 我想为我的搜索功能创建一个测试 我的服务层看起来像 public class EmployeeService BaseService IEmployeeService public EmployeeService IUn
  • 如何修复 TcpClient Ip 标头错误校验和

    我正在使用 System Net Sockets TcpClient 类 但每当我通过网络发送自定义数据包时 我都会在wireshark捕获上看到错误的校验和 我该如何修复它 问题是您在网络接口上设置了校验和卸载 这会导致您的网卡计算校验和
  • 等于方法实现助手 (C#)

    每次我编写一些数据类时 我通常都会花很多时间编写 IEquatable 实现 我写的最后一堂课是这样的 public class Polygon public Point Vertices get set 实施 IEquatable 是一项
  • C# While 循环与 For 循环?

    在 C 中 一个问题已经困扰我一段时间了 它的 While 和 For 循环之间的实际主要区别是什么 它只是纯粹的可读性吗 在 for 循环中本质上可以做的所有事情都可以在 while 循环中完成 只是在不同的地方 举这些例子 int nu
  • 如何使用 Linq to Sql 修剪值?

    在数据库中 我有一个名为 联系人 的表 名字和其他此类字符串字段设计为使用 Char 数据类型 不是我的数据库设计 我的对象 Contact 映射到属性中的字符串类型 如果我想做一个简单的测试 通过 id 检索 Contact 对象 我会这
  • C++中的虚方法表存放在哪里?

    我想知道类对象 不是实例 而是类 如何存储在内存中 class A public int a virtual void f virtual A class B public A public int b void f final overr
  • 为什么这段代码不会产生编译错误?

    template
  • vs2010 c++ 通过debug查看指针内容

    我正在使用 Vs2010 c 处理 2D 数组 我从一维指针开始 并使用操作 如下 class CMatrix void clear public int nRows int nCols short MyMat CMatrix CMatri
  • 如何在控制台程序中获取鼠标位置?

    如何在 Windows 控制台程序中用 C 获取鼠标单击位置 点击时返回鼠标位置的变量 我想用简单的文本命令绘制一个菜单 这样当有人点击时 游戏就会注册它并知道位置 我知道如何做我需要做的一切 除了单击时获取鼠标位置 您需要使用 Conso
  • 如何获取数字列的确切类型,包括。规模和精度?

    有没有办法知道列中列的确切类型DataTable 现在我正在这样做 DataTable st dataReader GetSchemaTable foreach DataColumn col in st Columns var type c
  • C++11 中引入了哪些重大更改?

    我知道 C 11 中至少有一项更改会导致一些旧代码停止编译 引入explicit operator bool 在标准库中 替换旧实例operator void 诚然 这将破坏的代码可能是一开始就不应该有效的代码 但它仍然是一个破坏性的变化

随机推荐

  • 斐波那契计算时间

    递归式斐波那契与循环式斐波那契之间是否存在明显的计算时间差异 我使用递归将斐波那契数列运行到 40 个位置 然后直接使用循环 看起来计算时间的差异只是academic 用C语言编写 递归解决方案 int main int argc cons
  • 如何在启动过程后切换Linux内核控制台?

    在我的嵌入式系统上 我通常使用 dev ttyS0 作 为主控制台 这是通过传递内核参数来实现的console dev ttyS0什么时候init尽其所能 getty在指定的同一设备上触发inittab by eg ttyS0 respaw
  • 将毫秒时间戳反序列化为 java.time.Instant

    我正在尝试使用 Jackson 读取 JSON 文件并将以纪元毫秒形式存储的字段之一存储为 JavaInstant 但是反序列化的行为并不如预期 这是我在尝试读取时间戳时看到的内容 1503115200000 杰克逊正在设定Instant字
  • 简单警报和徽章上的 IOS 10.2 UserNotifications 问题

    在写这篇文章之前 我对 UserNotification 框架进行了大量研究 该框架在 IOS 10 中取代了 UILocalNotification 我还按照本教程学习了有关此新功能的所有内容 http useyourloaf com b
  • 使用knitr使R块与文本对齐

    如何让 R 代码 R 块 与我的文本内联 Example 请使用 install packages ISwR 安装软件包 下列的来自一辉的建议 https groups google com forum fromgroups topic k
  • 如何让子字符串在 matlab 中工作?

    如果这是一个新问题 我很抱歉 但我已阅读文档here http www mathworks com help symbolic mupad ref substring html它没有说明在使用子字符串之前必须输入任何命令 但是 当我尝试按如
  • Xamarin.Forms - XamlCompilation MissingMethodException

    我想提高 Xamarin Forms UWP 应用程序的性能 因为它在发布模式下非常慢 选中 NET Native 因此 我在 PCL 项目中的程序集级别应用了 XAMLC assembly XamlCompilation XamlComp
  • 如何避免“框架分离”错误异步验证或使用 Puppeteer 进行重定向?

    以前的一个answer https stackoverflow com questions 51066987 puppeteer how can i wait for ajax request and process the result为
  • FireStore - 如何绕过数组“不包含”查询

    经过一些研究 很明显我无法使用 FireStore 来查询给定数组不包含的项目 有人有针对这个用例的解决方法吗 用户注册后 应用程序会获取一堆卡片 每张卡片在 FireStore 中都有相应的 卡片 文档 用户与卡片交互后 卡片文档将用户的
  • (PHP) 如何解析Google搜索结果中的URL?

    如何获取google搜索结果的url 我使用 Zend Gdata Gbase 来获取搜索谷歌结果 而不是 DomDocument htmlsimpleparser 因为在我看来 Zend Gdata Gbase 专门用于解析谷歌结果 如果
  • GTK+ 中的 CSS 样式

    好的 我最近开始使用 GTK 用 C 语言进行编程 我的代码中有一个 GdkToggleButton 我想用 css 添加样式 我在这里阅读了几乎所有 GTK3 文档https developer gnome org gtk3 stable
  • 如何从结果中排除零长度正则表达式匹配? [复制]

    这个问题在这里已经有答案了 我进行了快速谷歌搜索 但找不到任何结果 和 包括零长度匹配 我怎样才能将它们从我的结果中排除 例如运行一个 ada 在 1 和 3 处返回零长度匹配 如何排除它们 这是一个非常普遍的问题 我宁愿根据具体情况来解决
  • 用于处理接收中的异步操作的 Akka 模式

    我有一个 Actor 它接收指标数据点并定期聚合并将它们保存到磁盘 后一个操作执行 I O 因此我不想使用阻塞操作 但是 如果我将其切换为异步 如何防止在聚合完成之前接收其他数据点而不阻塞某处 我见过的一种模式是使用Stash 像这样 cl
  • HTML5 Canvas 访问控制允许来源错误

    当我尝试从 canvas 元素获取数据时 出现以下 javascript 错误 错误 不支持 canvas toDataURL 例外 操作不安全 代码 18 ns结果 0x80530012 安全错误 画布是从不同域提供的图像绘制的 但我使用
  • 执行 powershell 时 Kudu REST API 命令端点错误

    当尝试根据 api command 执行 POST 时这个描述 https github com projectkudu kudu wiki REST API command出现以下错误 PS C gt Result Error remov
  • HTML 到 PDF 的 Wicked PDF 和字母间距问题

    使用 0 79 和 0 7 2 生成的 PDF 看起来与我原来的 HTML 略有不同 添加 show as html 标志会按预期显示它 但是内联样式在 PDF 中的处理方式与在 HTML 预览中的处理方式不同 具体来说 我遇到的问题是字母
  • 将大数据从 WCF 服务发送到客户端的最佳方式是什么?

    我有一项返回大量数据的特定服务 WCF 中处理此问题的最佳实践和选项是什么 这些大数据在完成所有过滤后返回 因此无法再进行过滤 数据可以达到GB 我确实知道系统可以处理的数据量是有限的 但在上述场景中 您会推荐哪些选项 替代方案 使用流媒体
  • Vue 路由:未捕获类型错误:window.Vue.use 不是函数

    在我的 Laravel 项目中 我正在使用 Vue 库 并且尝试在模块中使用 vue router 但是当我像往常一样尝试导入 vue router 时 请参阅下面的代码 我的控制台出现错误 未捕获的类型错误 window Vue use
  • 无法在 Kotlin 中打印 Map 的键值

    我对 Kotlin 还很陌生 我想打印字符串中字符的计数 为此 我使用 Kotlin 的groupingBy 功能及应用eachCount to it My code val str 0100101101010 val countMap M
  • 将 byte[] 转换为 Windows.UI.Xaml.Media.Imaging.BitmapImage

    使用通用 Windows 应用程序并尝试绑定 xaml 中字节数组的图像 我有点失落 在 xaml 中我有类似的内容