如何使用从数据库派生的相对文件路径将 WPF 图像元素绑定到本地硬盘驱动器上的 PNG?

2023-11-30

我在本地硬盘上有一个文件夹,其中有几张图像。图像名称/路径存储在本地 SQLCE 数据库中。在 WPF 应用程序中,我尝试将这些图像绑定到 Image 元素(最终进入列表框)。我已经运行和编译了应用程序,并且列表框显示出来,但没有图像应该在的位置。

这是定义列表框使用的数据模板的 XAML...

<Window.Resources>
    <DataTemplate x:Key="assetLBTemplate">
        <StackPanel Orientation="Horizontal">
            <Image Height="32" Width="32" Source="{Binding imageFileName}" />
            <TextBlock Text="{Binding imageFileName}" />
            <TextBlock Text="{Binding assetName}" />
        </StackPanel>
    </DataTemplate>
</Window.Resources>

列表框的 XAML...

<ListBox x:Name="lbAssetsLiquid"
    ItemsSource="{Binding Tables[0]}"
    ItemTemplate="{StaticResource assetLBTemplate}"
    BorderThickness="1, 1, 1, 1" Grid.Column="0" Grid.Row="1" />

我在 Window_Loaded 上运行的代码:

    private void BindLiquidAssetsListBoxData()
    {
        SqlCeConnection connection;
        SqlCeCommand command;
        string sql = "SELECT tblLiquidAssets.assetName, tblLiquidAssets.assetQuantity, tblLiquidAssets.assetValueGP, tblLiquidAssets.assetDescription, tblImages.imageFileName FROM tblLiquidAssets INNER JOIN tblImages ON tblLiquidAssets.assetImageIndex=tblImages.imageID;";
        string connectionString = "Data Source=sharecalc_db.sdf;Persist Security Info=False;";
        DataSet dtSet = new DataSet();

        try
        {
            using (connection = new SqlCeConnection(connectionString))
            {
                command = new SqlCeCommand(sql, connection);
                SqlCeDataAdapter adapter = new SqlCeDataAdapter();
                connection.Open();
                adapter.SelectCommand = command;
                adapter.Fill(dtSet, "tblLiquidAssets");
                lbAssetsLiquid.DataContext = dtSet;
                connection.Close();
            }
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message);
        }
    }

SQL 查询的结果是...

SQL Query

再次...程序加载了列表框,但没有加载图像。

我在输出窗口中得到这个,这让我觉得我在这里遗漏了一些重要的东西......

转换器无法转换值“gold64.png”(类型“String”)

当我在解决方案资源管理器中将图像添加到项目本身时,它似乎可以工作(图像出现在它们应该在的位置)......但否则它不起作用。有人可以把我推向正确的方向吗?


如果要从文件系统加载文件,则需要使用自定义值转换器将字符串转换为图像。Image.Source,当传递字符串时,需要来自资源的文件名。您可以在这里找到此类转换器的实现:在 WPF 中显示图像而不保持文件打开.

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

如何使用从数据库派生的相对文件路径将 WPF 图像元素绑定到本地硬盘驱动器上的 PNG? 的相关文章

  • binary_log_types.h:没有这样的文件或目录

    我正在编译一个小型 mysql C 项目并且 遇到以下错误 C Program Files x86 MySQL MySQL Server 5 7 include mysql com h 22 30 fatal error binary lo
  • WPF Dispatchertimer 延迟反应/冻结

    在我的 WPF 应用程序中 我使用 3 个不同的 DispatcherTimers 一种是用于显示当前时间 一种是每 5 秒运行一次数据库查询 第三个每 1 秒刷新一次自定义按钮的值 当我的程序运行时 有很多延迟 冻结 例如 时间开始正确计
  • 如果图像包含特定颜色则

    是否有一种简单的方法来检查图像是否包含特定的 RGB 颜色 例如 Dim img As Image Image FromFile C image png If img contains color red toRGB then 我认为检查这
  • 比较 LINQ to SQL 中的两个日期

    我有一个数据库 其中有一个名为会议的表 会议日期使用以下格式存储在此表中 May 2nd 2011 例如 格式为5 2 2011 我的要求是获取两个日期 例如 2011 年 4 月 25 日和 2011 年 5 月 2 日 之间的会议 并编
  • 以编程方式获取 DataGridColumnHeader ContextMenu

    我在 View cs 中有这段代码 var contextMenu this dataGridFacade GiveContextMenuForDataGrid this DataGridAllJobs this DataGridAllJo
  • & 运算符的含义是什么?

    在下面的代码中 Expression
  • 我的 WPF 应用程序未触发 MainWindow_Loaded

    我目前正在关注Pluralsight C Fundamentals Part 1并在Classes and Objects视频部分指导我在 Visual Studio 中创建一个新的 WPF 应用程序并填写代码 这导致以下结果 namesp
  • 函数指针上的未知类型 F TYPE

    include
  • 如何在Azure功能中添加razor视图文件?

    我正在创建一个应用程序 它是 azure 函数项目 我想在该项目中使用 Razor 视图 我应该在 azure 函数中使用任何模板引擎吗 得益于一些方面的进步剃刀之光项目 https github com toddams RazorLigh
  • ASP.NET中如何访问除wwwroot以外的位置

    我可以使用访问服务器的物理位置Server MapPath 这给了我内部的物理路径wwwroot文件夹 我想将一些数据保存到同一服务器的另一个驱动器中D 驾驶 我想我无法获取以下位置的物理位置D 驾驶使用Server MapPath因为它位
  • 如何在 apache poi 中找到包含图片的单元格

    我尝试在 xls 文档中循环图像 我写下一个代码 HSSFPatriarch patriarch sheet getDrawingPatriarch if patriarch null Loop through the objects fo
  • 将授权标头添加到 Web 参考

    我正在尝试向客户端的网络服务发出请求 我不知道客户端的底层平台 我使用 添加 Web 引用 在 Visual Studio 2010 中使用了客户端的 WSDL 并生成了我的代理类 称为 ContactService 我现在需要将如下所示的
  • 从视图模型调用方法的命令

    好吧 我倾向于避免使用命令 因为它们总是让我感到困惑 但我正在进行一个新项目 并且正在尝试正确构建它 并且在我看来没有任何代码隐藏 基本上我现在想做的就是连接一个按钮来触发一个命令 在我的视图模型上执行一些操作 但不知何故 如此简单的事情仍
  • 如何在 Visual Studio 2010 Express 中引用 system.drawing?

    我对此有点陌生 我的印象是要绘制我创建的矩形 我需要使用 system drawing graphics 问题是 我收到错误 命名空间 System 中不存在类型或命名空间名称 drawing 您是否缺少程序集引用 当我右键单击解决方案资源
  • 如何在asp.net core 6中注入IConfiguration

    web api 应用程序中不再有 Startup cs 我们以前可以注入IConfiguration进入那个Startup class public class Startup public Startup IConfiguration c
  • #define 内存地址声明

    这个 define 语句有什么作用 它用于定义内存地址 但我不明白 uint32 t 部分 define GPxDAT uint32 t 0x6FC0 通常用于访问映射到地址空间的硬件寄存器 或者一些特定的内存地址 硬件寄存器应定义为vol
  • 使用非字符串作为字符串(而不是自动使用 ToString)时如何显示错误?

    建议的重复确实是一个类似的问题 然而 答案只涵盖一种选择 禁用 ToString 本身 还有其他可能的解决方案 例如让 Visual Studio 警告我 或者不调用 ToString 仔细阅读那里的答案 他认为is调用 只是解释说没有办法
  • 用于 nmap 输出的 C++ xml 解析器

    我是 nmap 的新手 我在 nmap 教程中看到 https nmap org book man output html https nmap org book man output html oX 选项可用于获取 xml 格式的 nma
  • asp.net mvc GET 请求上的 formcollection 应该为空

    我正在发布一个简单的操作 public void Login FormCollection formCollection 即使查询字符串值很少 formcollection Count is 0 是靠行为吗 FormCollection 使
  • C#:如何处理乱序 TCP 数据包?

    请有人解释一下如何处理乱序数据包 我使用原始套接字来捕获数据包 并在数据包到来时解析它们 但其中一些数据包的顺序错误 例如 ID 标志 16390 PSH ACK 16535 PSH ACK 16638 确认 16640 PSH ACK 1

随机推荐

  • Jquery 旋转 div [重复]

    这个问题在这里已经有答案了 我无法旋转 div 控制台中没有警告或错误 您可以查看JSFiddle 版本在这里 我使用的代码是 div2 click someFunction2 function someFunction2 div2 ani
  • 禁用 HTML5 范围输入的跟踪

    我正在尝试找到一种方法来阻止用户单击 HTML5 范围输入的 轨道 部分 本质上 我只希望用户能够使用 句柄 来更改范围值 这可能吗 至少在 chrome 上可以通过指针事件实现 input type range pointer event
  • 客户端与服务器对话时如何克服“Access-Control-Allow-Origin”错误

    因此 我正在使用 swiip 的一个 yeoman 项目 名为 Generator gulp Angular 只需执行 npm search gulp Angular 您就会看到它 开箱即用的客户端从 127 0 0 1 3000 运行 我
  • 从 java webstart 应用程序中的 jar 获取资源

    我正在尝试在 Java Webstart 应用程序中加载大量资源 我最初尝试使用以下方式加载这些 ClassLoader loader MyClass class getClassLoader URL url loader getResou
  • mongodb keep_mutation阶段解释

    我使用mongo的explain 来检查一些查询的性能 有时会出现keep mutation阶段 如下所示 executionStats executionStages stage KEEP MUTATIONS nReturned 1 ex
  • Rails 3 设计 401 未经授权的 ajax 调用

    我遇到了与这个问题类似的问题 Rails 3 中的 jQuery Ajax 调用收到 401 未经授权的请求 我已将 token authenticatable 添加到我的设计模型中 在我的 ajax 调用操作中 def rate para
  • 如何将列表应用于 pandas 组[重复]

    这个问题在这里已经有答案了 我看到这个问题 在 pandas groupby 中对列表中的行进行分组 但我想要应用两列以上list input df pd DataFrame index c1 c2 c3 1 A 6 1 2 A 5 2 3
  • 如何通过按键切换元素的内容?

    我目前正在尝试创建一个网站 如果我按 q p 标签将从 Q 更改为 A 目前 这适用于下面的代码 然而问题是 当按 q 时 它需要返回到 A 我尝试让它与removeEventListeners 一起使用 但它似乎不起作用 Like die
  • 如何递归地从表中删除项目?

    我有一个 MySQL 表 文件夹 CREATE TABLE IF NOT EXISTS folders id int 11 unsigned NOT NULL AUTO INCREMENT folder key varchar 40 NOT
  • sed:在块之后追加

    我对 sed 很陌生 我发现的所有内容都是这里一点 那里一点 我有一个文本文件 其中包含如下所示的块 start a b c whatever 显然 这是一个简化版本 我想在末尾添加一行 start阻止给我 start a b c d wh
  • 如何使用表中可能不可用的 ID 构建 SQL 语句?

    使用 Microsoft SQL Server 2008 假设有一个 table1 保存所选的省 区 公社和村庄的 ID 然后是表2 其中包含省 区 公社和村庄的ID和名称 省份和地区是必填字段 并且始终会被填满 公社和村庄可能会被填满 但
  • 使用 Apache Spark 将键值对简化为键列表对

    我正在编写一个 Spark 应用程序 想要组合一组键值对 K V1 K V2 K Vn 成一个键 多值对 K V1 V2 Vn 我觉得我应该能够使用reduceByKey带有某种味道的函数 My KMV My KV reduce lambd
  • NSString:isEqual 与 isEqualToString

    有什么区别isEqual and isEqualToString 为什么类要添加 isEqualTo 方法 对于 NSArray 来说是 isEqualToArray 对于 NSData 来说是 isEqualToData 而不是仅仅重写i
  • AFNetworking 表单请求(一个请求中上传多个文件)

    我们正在开发一个 iOS 应用程序 该应用程序在一个请求中提供单个以及多个文件上传选项 我使用 AFNetworking 进行单个文件上传 效果很好 现在 我们需要支持多个文件上传 我有 html 代码 它实际上可以从网络上传多个文件 我需
  • DISPID_VALUE 对于从脚本调用 IDispatch 是否可靠?

    继续从这个问题 我很困惑是否DISPID VALUE on IDispatch Invoke 脚本函数和属性 在我的例子中是 JavaScript 可以被认为是标准且可靠的 用于调用由IDispatch 如果是 MSDN 中是否提到过 请注
  • Java全屏独占模式

    我使应用程序在独占模式下全屏显示 但是当我显示输入对话框时 应用程序被最小化 我希望应用程序保持全屏 并在其上显示输入对话框 这就是我全屏渲染应用程序的方式 setUndecorated true GraphicsEnvironment g
  • CIPhotoEffect CIFilters 在色彩管理方面是不变的。是什么赋予了 CIPhotoEffect 滤镜这个属性?

    给这个问题一些背景 ho ho 我在 iOS 下对 CIFilter 进行子类化 以便创建一些自定义照片效果滤镜 根据文档 这意味着创建一个 复合 过滤器 将一个或多个预先存在的 CIFilter 封装在我的自定义 CIFilter 子类的
  • 如何让 iPhone 在播放视频时自动锁定

    如何允许 iOS 设备在使用 AVFoundation 播放视频时调暗屏幕并自动锁定设备 使用 AVPlayer 播放视频默认禁用屏幕自动锁定 无论如何 是否可以在不暂停视频播放的情况下重新启用它 为什么你想让屏幕在播放视频时处于空闲状态
  • C# 同时运行多个异步任务

    我对异步任务有点陌生 我有一个函数 可以获取学生 ID 并从特定大学网站上抓取具有所需 ID 的数据 private static HttpClient client new HttpClient public static async T
  • 如何使用从数据库派生的相对文件路径将 WPF 图像元素绑定到本地硬盘驱动器上的 PNG?

    我在本地硬盘上有一个文件夹 其中有几张图像 图像名称 路径存储在本地 SQLCE 数据库中 在 WPF 应用程序中 我尝试将这些图像绑定到 Image 元素 最终进入列表框 我已经运行和编译了应用程序 并且列表框显示出来 但没有图像应该在的