如何在运行时创建 WPF UserControl 的图像

2023-12-29

我创建了一个 WPF 应用程序,其中有Canvas我把它放在上面UserControls它们可以由用户移动和调整大小(就像 Windows 窗口一样)。现在我发现在旧电脑上这可能会非常慢,这是一个问题。

作为一种解决方案,我考虑生成一个显示 UserControl 的图形,并在调整大小/拖动控件时显示该图形,以防止 WPF 永久重新计算所有元素。唯一的问题是我不知道如何生成这个图像。

.Net 中是否有类似函数可以执行此操作?或者我自己怎么能做到这一点?


您可以使用以下命令将 WPF 控件渲染为位图:渲染目标位图 http://msdn.microsoft.com/en-us/library/system.windows.media.imaging.rendertargetbitmap.aspx,然后可以将此图像复制到剪贴板、保存到文件或用作 GUI 的一部分

查看从控制视图获取位图图像 https://stackoverflow.com/questions/2522380/get-a-bitmap-image-from-a-control-view

请注意,当您尝试渲染的控件的部分内容不可见时(可能在滚动查看器中),您可能会遇到问题

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

如何在运行时创建 WPF UserControl 的图像 的相关文章

  • 单元测试验证失败

    我正在运行我的单元测试PostMyModel路线 然而 在PostMyModel 我用的是线Validate
  • 如何在另一个应用程序中挂钩 api 调用

    我正在尝试挂钩另一个应用程序的 ExtTextOut 和 DrawTextExt GDI 方法调用 我知道我需要使用 GetProcAddress 来查找 gdi32 dll 中那些方法的地址 并用我的函数的地址覆盖我想要挂钩的进程中的地址
  • 在 OnModelCreating 期间设置列名称

    Issue 我目前正在尝试通过设置的属性为我的表及其列添加前缀 我正在使用实体框架核心 我已经正确地为表名添加了前缀 但我似乎无法弄清楚列的前缀 我有一种感觉 我需要使用反射 我已经留下了我的 可能很糟糕的 反思尝试 有人有办法在实体中设置
  • 如何在 XAML/WPF 中存储和检索多个形状?

    使用 XAML WPF 做一些简单的事情似乎遇到了很多问题 我已经使用矩形和椭圆形等形状创建了一些基于 XAML 的图像来创建我需要应用程序的其他部分使用的图标 但我不能似乎找到了如何做到这一点 我似乎能够在资源字典中存储画布 但无法在任何
  • 在现代 C++ 中,临时生命周期延长何时有用?

    在 C 中 您可以将函数的返回值 返回值 而不是引用 绑定到 const 引用 并且代码仍然有效 因为该临时对象的生命周期将延长到作用域末尾 例如 std string get string return abc void f const
  • linq 中使用字符串数组 c# 的 'orderby'

    假设我有一个这样的方法定义 public CustomerOrderData GetCustomerOrderData string CustomerIDs var query from a in db Customer join b in
  • 一元 +/- 运算符如何可能导致“-a”或“+a”中的整数提升,“a”是算术数据类型常量/变量?

    这句看似微不足道的台词摘自我的迈克 巴纳汉和布雷迪的 C 书 第 2 8 8 2 节 http publications gbdirect co uk c book chapter2 expressions and arithmetic h
  • 在 omp 并行 for 循环中使用 unique_ptr 会导致 SEG.FAULT

    采取以下代码 include
  • 使用 LINQ 更新 IEnumerable 对象的简单方法

    假设我有一个这样的业务对象 class Employee public string name public int id public string desgination public int grade List
  • 根据对象变量搜索对象列表

    我有一个对象列表 这些对象具有三个变量 ID 名称和值 这个列表中可能有很多对象 我需要根据ID或Name找到一个对象 并更改值 例子 class objec public string Name public int UID public
  • 如何使用 NPOI 按地址(A1、A2)获取 Excel 单元格值

    我有一个 Excel 单元格地址 例如 A1 A2 如何使用 C 中的 NPOI 框架以编程方式访问此单元格 我找到的一些 Java POI 示例代码 CellReference cr new CellReference A1 row my
  • 从BackgroundWorker线程更新图像UI属性

    在我正在编写的 WPF 应用程序中 我有一个 TransformedBitmap 属性 该属性绑定到 UI 上的 Image 对象 每当我更改此属性时 图像就会更新 因此显示在屏幕上的图像也会更新 为了防止在检索下一张图像时 UI 冻结或变
  • Linux mremap 不释放旧映射?

    我需要一种方法将页面从一个虚拟地址范围复制到另一个虚拟地址范围 而无需实际复制数据 范围很大 延迟很重要 mremap 可以做到这一点 但问题是它也会删除旧的映射 由于我需要在多线程环境中执行此操作 因此我需要旧映射能够同时使用 因此稍后当
  • 在 OpenGL 中渲染纹理 1 到 1

    所以我想做的是使用 OpenGL 和 C 将纹理渲染到平面上 作为显示图像的一种方式 但是我需要确保在渲染纹理时没有对纹理进行任何处理 抗锯齿 插值 平滑 模糊等 这是 OpenGL 处理渲染纹理的默认方式吗 或者是否需要设置一些标志才能禁
  • .NET 4 的条件编译[重复]

    这个问题在这里已经有答案了 可能的重复 条件编译和框架目标 https stackoverflow com questions 2923210 c sharp conditional compilation and framework ta
  • 选择查询不适用于使用Parameters.AddWithValue 的参数

    C 中的以下查询不起作用 但我看不出问题所在 string Getquery select from user tbl where emp id emp id and birthdate birthdate cmdR Parameters
  • 如何调试 .NET 运行时中的内部错误?

    我正在尝试调试一些处理大文件的工作 代码本身works 但 NET 运行时本身会报告零星错误 对于上下文 这里的处理是一个 1 5GB 文件 仅加载到内存中一次 在循环中处理和释放 故意尝试重现此否则不可预测的错误 我的测试片段基本上是 t
  • 来自 3rd 方库的链接器错误 LNK2019

    我正在将旧的 vc 6 0 应用程序移植到 vs2005 我收到以下链接器错误 我花了几天时间试图找到解决方案 错误LNK2019 无法解析的外部符号 imp 创建AwnService 52 在函数 public int thiscall
  • DataContractSerializer 事件/委托字段问题

    在我的 WPF 应用程序中 我正在使用DataContractSerializer序列化对象 我发现它无法序列化具有事件或委托声明的类型 考虑以下失败的代码 Serializable public abstract class BaseCl
  • 如何将 SQL“LIKE”与 LINQ to Entities 结合使用?

    我有一个文本框 允许用户指定搜索字符串 包括通配符 例如 Joh Johnson mit ack on 在使用 LINQ to Entities 之前 我有一个存储过程 该存储过程将该字符串作为参数并执行以下操作 SELECT FROM T

随机推荐

  • 32 位 Oracle 客户端的 SSRS 报告无法在 64 位环境中工作

    我有一个在 BIDS 2008 中使用 32 位 Oracle 客户端构建的 SSRS 报告 报告在 BIDS VS 2008 中运行良好 但是当部署到 Win2k3 64 位服务器上的报告管理器时 它失败并出现以下错误 尝试加载 Orac
  • 如何手动设置在应用程序委托中显示哪个故事板视图

    我有一个应用程序 只要应用程序在一段时间内处于非活动状态 就希望注销用户 应用程序中有多个不同的视图 我希望应用程序委托在触发此方法时将登录视图设置为当前视图 void applicationDidBecomeActive UIApplic
  • Postgres 8.4.4(Win7 x64 上的 x32)小表上的更新速度非常慢

    我有一个非常简单的更新语句 UPDATE W SET state thing WHERE state NOT IN this that AND losttime lt CURRENT TIMESTAMP 表 W 只有 90 行 每行的丢失时
  • Jmeter - 如何基于“jar”文件循环数据

    我想创建一个场景 将 jar 文件中的数据使用到 Jmeter 循环逻辑中 我的罐子看起来像 public String Australia String a location lat 33 8669710 lng 151 1958750
  • BlackBerry - 如何设置应用程序图标?

    我需要为我的应用程序设置一个图标 当焦点位于该特定应用程序时 该图标必须更改 请参阅项目 gt 属性 gt BlackBerry 项目属性 gt 资源 要动态更改图标 请参阅在 BlackBerry JDE 4 5 0 的状态栏添加通知图标
  • 正在继续下载

    这个想法很简单 我正在创建一个服务 用户可以在其中放置托管在另一个网站上的文件的直接链接 我的程序将打开到该远程服务器的流并开始以字节为单位读取文件 然后返回每个读取的文件字节给用户 到目前为止 我设法让它工作 这是我的代码 public
  • 当一系列数字变为负数时确定单元格 ID 的 Excel 公式

    样本数据 A B 1 Date Amount 2 Apr 1 6 000 3 May 1 4 250 4 June 1 2 750 5 July 1 1 000 6 Aug 1 0 075 lt This Cell Row 7 Sept 1
  • 如何从 WooCommerce 获取所有结帐字段?

    我喜欢获取所有可用的结账字段 包括第三方的 fields WC gt checkout gt checkout fields 返回致命错误 Fatal error Call to a member function get country
  • 无法创建 sessionFactory 对象.org.hibernate.HibernateException

    您好 我是 hibernate 框架的新手 当我运行 hibernate 示例示例代码时 如果互联网连接可用 它工作正常 如果互联网连接不可用 则它无法工作 并给出如下错误 log4j WARN No appenders could be
  • 高效的用户界面

    速度和易学性并不直接相互对抗 但设计这样一个缺少其中之一 或两者 的 GUI 似乎很容易 大多数时候 GUI 设计者似乎更喜欢 易于学习 即使 快速应用 更为明智 只有少数 UI 概念或程序注重最大限度地提高您使用该程序所做的任何操作的最高
  • C++ 中整数异或的可能结果

    是否保证 2 32 34 在 C 20 中 是的 就是这样 expr xor http eel is c draft expr xor定义它 Given the coefficients xi and yi of the base 2 re
  • Git 归咎于重组的 SVN 存储库

    git blame没有向我显示布局已重新组织的 SVN 存储库的所有历史记录 我正在使用 git svn 访问 SVN 存储库 SVN 存储库过去的结构具有巨大的文件夹树来保存许多项目 去年 我重新组织并将布局扁平化为更标准的主干 标签 分
  • JFrame 和 JPanel 问题

    我正在尝试为当地一家销售糕点 百吉饼和咖啡的百吉饼店制作一个程序 我在实现 JFrame 中制作的面板时遇到问题 任何帮助理解如何使我的 JFrame 看起来像这样都会有帮助http kepler covenant edu COS150 B
  • 告诉我的库函数的用户传递的变量类型不正确的最佳方法是什么

    我目前正在创建一个 javascript 函数库 主要供我自己使用 但你永远无法确定其他人最终是否会在他们的项目中使用它 我至少会创建它 就好像这可能发生一样 大多数方法仅在传递的变量具有正确的数据类型时才有效 现在我的问题是 提醒用户变量
  • 无法通过 Ant 在 JUnit 测试中自动装配 - 看起来 @RunWith(SpringJUnit4ClassRunner.class) 不起作用

    我的测试用例看起来像这样 RunWith SpringJUnit4ClassRunner class ContextConfiguration locations classpath applicationContext xml publi
  • Youtube V3 API - 根据关键字获取随机视频

    我使用下面的代码导航到 Youtube 数据的不同页面 我根据 randomNumber 1 到 20 一次又一次地调用该服务 但我不认为这是更好的方法 youtube new Google Service YouTube client s
  • 如何从 package.json 中设置环境变量?

    如何从内部设置一些环境变量package json与使用npm start喜欢命令 这是我目前拥有的package json scripts help tagove help start tagove start 我想设置环境变量 例如NO
  • scipy find_peaks 是否有相反版本?

    我正在寻找 Python 绘图中的最小点 是否有 from scipy signal import find peaks 的相反版本 如何在 python 上找到图的局部最小值的 x 点 只需将数据颠倒过来并寻找峰值即可 scipy sig
  • 如何使用 Modifier 镜像 canvas 制作的可组合函数?

    问题描述 我正在尝试使用 Compose 和 Canvas 在 android 上创建一个模拟 7 段显示的组件 如下所示 为此 我采取了仅创建该组件的一半并向下镜像我创建的这部分的策略 所以我会拥有整个显示 这是 7 段显示屏的顶部部分
  • 如何在运行时创建 WPF UserControl 的图像

    我创建了一个 WPF 应用程序 其中有Canvas我把它放在上面UserControls它们可以由用户移动和调整大小 就像 Windows 窗口一样 现在我发现在旧电脑上这可能会非常慢 这是一个问题 作为一种解决方案 我考虑生成一个显示 U