热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

XAMLWPF自定义控件库未在外部项目中显示嵌入式图像

我正在发布此问题,并将答复,因为在SO上缺少对此问题的有效解决方案。

我正在发布此问题,并将答复,因为在SO上缺少对此问题的有效解决方案。

问题是当您创建使用图像的自定义控件或外部库时,图像可能不会显示在使用该库的程序中。

在我的特定情况下,我具有使用自定义控件基类的用户控件。

由于某种原因,图像会出现在用户控件的设计视图和外部程序的设计窗口中。但是,在运行时它将不会在外部程序窗口中显示图像。

我从SO的其他解决方案中尝试了以下所有方法:


  • 在DP的xaml中使用pack://,命令(在设计视图中有效)

  • 引用外部程序中的各个xaml文件(从OO和SOLID的角度来看,这是一个坏主意)

  • 在URI字符串之前使用../(在设计视图中有效)

  • 使用EmbeddedResource构建图片

  • 创建一个转换器来处理字符串(不必要的操作,这会给系统增加额外的垃圾,而且效果也不佳)

  • 在自定义控件上创建额外的依赖项属性(从绑定的角度来看,这是一个混乱的主意)

  • 使用assembly;component/[folder name]/[image name] (在设计视图中有效)

  • 使用[folder name/image name] (在设计视图中有效)

  • 更改assemblyinfo.cs文件和自定义类的静态构造函数以包含Generic.xaml文件。



所以某些答案是如此接近,我才发现它,是因为我开始使用 Snoop WPF ,请在此处获取:Snoop @Github (我与他们无关无论如何,我只是发现了它)

我可以使用该程序深入到程序中,并找到正在发生的错误,URI字符串似乎在解释中存在问题。这排除了上面列表中的一堆东西。

最终,我通过搜索特定错误在The MSDN forums上找到了答案,
您必须使用:/[assembly];component/[folder name]/[image name],请注意,字符串的开头是/,这是我的唯一尝试之一。

即使在程序集不起作用之前,也要在/中使用字符串中的pack命令。

因此,对于名为 myLibrary 的图书馆项目,名为 MyControl 的自定义控件,名为 resources 的图像文件夹以及名为的图像该文件夹中的> myTestImage.png 。自定义控件的调用为:




推荐阅读
  • 1.如何在运行状态查看源代码?查看函数的源代码,我们通常会使用IDE来完成。比如在PyCharm中,你可以Ctrl+鼠标点击进入函数的源代码。那如果没有IDE呢?当我们想使用一个函 ... [详细]
  • 本文详细介绍了Java编程语言中的核心概念和常见面试问题,包括集合类、数据结构、线程处理、Java虚拟机(JVM)、HTTP协议以及Git操作等方面的内容。通过深入分析每个主题,帮助读者更好地理解Java的关键特性和最佳实践。 ... [详细]
  • 本文探讨了如何在 PHP 的 Eloquent ORM 中实现数据表之间的关联查询,并通过具体示例详细解释了如何将关联数据嵌入到查询结果中。这不仅提高了数据查询的效率,还简化了代码逻辑。 ... [详细]
  • PHP 5.2.5 安装与配置指南
    本文详细介绍了 PHP 5.2.5 的安装和配置步骤,帮助开发者解决常见的环境配置问题,特别是上传图片时遇到的错误。通过本教程,您可以顺利搭建并优化 PHP 运行环境。 ... [详细]
  • 本文详细介绍了如何使用 Yii2 的 GridView 组件在列表页面实现数据的直接编辑功能。通过具体的代码示例和步骤,帮助开发者快速掌握这一实用技巧。 ... [详细]
  • 360SRC安全应急响应:从漏洞提交到修复的全过程
    本文详细介绍了360SRC平台处理一起关键安全事件的过程,涵盖从漏洞提交、验证、排查到最终修复的各个环节。通过这一案例,展示了360在安全应急响应方面的专业能力和严谨态度。 ... [详细]
  • 网络运维工程师负责确保企业IT基础设施的稳定运行,保障业务连续性和数据安全。他们需要具备多种技能,包括搭建和维护网络环境、监控系统性能、处理突发事件等。本文将探讨网络运维工程师的职业前景及其平均薪酬水平。 ... [详细]
  • 基于KVM的SRIOV直通配置及性能测试
    SRIOV介绍、VF直通配置,以及包转发率性能测试小慢哥的原创文章,欢迎转载目录?1.SRIOV介绍?2.环境说明?3.开启SRIOV?4.生成VF?5.VF ... [详细]
  • 本文详细介绍了如何解决Uploadify插件在Internet Explorer(IE)9和10版本中遇到的点击失效及JQuery运行时错误问题。通过修改相关JavaScript代码,确保上传功能在不同浏览器环境中的一致性和稳定性。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 深入理解Tornado模板系统
    本文详细介绍了Tornado框架中模板系统的使用方法。Tornado自带的轻量级、高效且灵活的模板语言位于tornado.template模块,支持嵌入Python代码片段,帮助开发者快速构建动态网页。 ... [详细]
  • CentOS7源码编译安装MySQL5.6
    2019独角兽企业重金招聘Python工程师标准一、先在cmake官网下个最新的cmake源码包cmake官网:https:www.cmake.org如此时最新 ... [详细]
  • 本文介绍如何使用阿里云的fastjson库解析包含时间戳、IP地址和参数等信息的JSON格式文本,并进行数据处理和保存。 ... [详细]
  • 本文详细介绍了 com.facebook.drawee.view.SimpleDraweeView 中的 setScaleType 方法,提供了多个实际代码示例,并解释了其在不同场景下的应用。 ... [详细]
  • 本文探讨了领域驱动设计(DDD)的核心概念、应用场景及其实现方式,详细介绍了其在企业级软件开发中的优势和挑战。通过对比事务脚本与领域模型,展示了DDD如何提升系统的可维护性和扩展性。 ... [详细]
author-avatar
凌晨
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有