使用调度程序更新 WPF 进度条

2023-11-22

我正在尝试使用调度程序更新进度条,但不知何故无法想到在哪里放置调度程序。调用以及在其中传递什么内容。

我正在尝试导入文件,并且需要使用进度栏向用户显示导入了多少文件。

所以我有一个代表:

public delegate void DelegateA(ProgressClass progressClass);

我调用委托并传递要调用的函数。

DelegateA(FunctionA);

因此,在导入每个文件时,它会调用该函数。

private void FunctionA(ProgressClass progressClass)
{
    **//Put dispatcher.invoke here?**
    progressbar.updateprogress(progressclass);
    progressbar.show();
}

Progress类有两个属性,用于设置进度条的值(已处理的数量)和要处理的总项目数。

我无法理解 InvokeMethod(THreadPriority, delegate method) 中传递什么委托方法?

抱歉,如果有不清楚的地方。


如果您尝试从某些非 UI 线程更新 UI,您可以执行以下操作。

//here progress bar is a UIElement
progressBar.Dispatcher.BeginInvoke(
           System.Windows.Threading.DispatcherPriority.Normal
           , new DispatcherOperationCallback(delegate
                   {
                       progressBar1.Value = progressBar1.Value + 1;
                       //do what you need to do on UI Thread
                       return null;
                   }), null);

这段代码取自一个好的post关于从后台线程更新 UI

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

使用调度程序更新 WPF 进度条 的相关文章

  • 使用 Microsoft Graph API 订阅 Outlook 推送通知时出现 400 错误请求错误

    我正在尝试使用 Microsoft Graph API 创建订阅以通过推送通知获取 Outlook 电子邮件 mentions 我在用本文档 https learn microsoft com en us graph api subscri
  • 跨多个控件共享事件处理程序

    在我用 C 编写的 Windows 窗体应用程序中 我有一堆按钮 当用户的鼠标悬停在按钮上时 我希望按钮的边框发生变化 目前我有以下多个实例 每个按钮一个副本 private void btnStopServer MouseEnter ob
  • 使用 C# 在 WinRT 中获取可用磁盘空间

    DllImport kernel32 dll SetLastError true static extern bool GetDiskFreeSpaceEx string lpDirectoryName out ulong lpFreeBy
  • c 中的错误:声明隐藏了全局范围内的变量

    当我尝试编译以下代码时 我收到此错误消息 错误 声明隐藏了全局范围内的变量 无效迭代器 节点 根 我不明白我到底在哪里隐藏或隐藏了之前声明的全局变量 我怎样才能解决这个问题 typedef node typedef struct node
  • HttpClient 像浏览器一样请求

    当我通过 HttpClient 类调用网站 www livescore com 时 我总是收到错误 500 可能服务器阻止了来自 HttpClient 的请求 1 还有其他方法可以从网页获取html吗 2 如何设置标题来获取html内容 当
  • 按字典顺序对整数数组进行排序 C++

    我想按字典顺序对一个大整数数组 例如 100 万个元素 进行排序 Example input 100 21 22 99 1 927 sorted 1 100 21 22 927 99 我用最简单的方法做到了 将所有数字转换为字符串 非常昂贵
  • Windows 窗体不会在调试模式下显示

    我最近升级到 VS 2012 我有一组在 VS 2010 中编码的 UI 测试 我试图在 VS 2012 中启动它们 我有一个 Windows 窗体 在开始时显示使用 AssemblyInitialize 属性运行测试 我使用此表单允许用户
  • 我的 strlcpy 版本

    海湾合作委员会 4 4 4 c89 我的程序做了很多字符串处理 我不想使用 strncpy 因为它不会终止 我不能使用 strlcpy 因为它不可移植 只是几个问题 我怎样才能让我的函数正常运行 以确保它完全安全稳定 单元测试 这对于生产来
  • Windows 10 中 Qt 桌面应用程序的缩放不当

    我正在为 Windows 10 编写一个简单的 Qt Widgets Gui 应用程序 我使用的是 Qt 5 6 0 beta 版本 我遇到的问题是它根本无法缩放到我的 Surfacebook 的屏幕上 这有点难以判断 因为 SO 缩放了图
  • C 中的位移位

    如果与有符号整数对应的位模式右移 则 1 vacant bit will be filled by the sign bit 2 vacant bit will be filled by 0 3 The outcome is impleme
  • 可空属性与可空局部变量

    我对以下行为感到困惑Nullable types class TestClass public int value 0 TestClass test new TestClass Now Nullable GetUnderlyingType
  • 检查 url 是否指向文件或页面

    我们需要以下内容 如果文件确实是文件 则从 URL 下载该文件 否则 如果它是一个页面 则什么也不做 举个简单的例子 我有以下命令来下载文件 My Computer Network DownloadFile http www wired c
  • 什么是 C 语言的高效工作流程? - Makefile + bash脚本

    我正在开发我的第一个项目 该项目将跨越多个 C 文件 对于我的前几个练习程序 我只是在中编写了我的代码main c并使用编译gcc main c o main 当我学习时 这对我有用 现在 我正在独自开展一个更大的项目 我想继续自己进行编译
  • 将应用程序从 Microsoft Access 迁移到 VB 或 C#.NET

    我目前正试图说服管理层需要将我们的应用程序之一移植到 NET 该应用程序已经发展成为 Access 中的一个庞然大物 SQL 后端 拥有 700 个链接表 650 个表单 子表单 130 个模块和 850 个查询 我几乎知道这样做的所有主要
  • EPPlus Excel 更改单元格颜色

    我正在尝试将给定单元格的颜色设置为另一个单元格的颜色 该单元格已在模板中着色 但worksheet Cells row col Style Fill BackgroundColor似乎没有get财产 是否可以做到这一点 或者我是否必须在互联
  • char指针或char变量的默认值是什么[重复]

    这个问题在这里已经有答案了 下面是我尝试打印 char 变量和指针的默认值 值的代码 但无法在控制台上看到它 它是否有默认值或只是无法读取 ASCII 范围 include
  • 窗体最大化时自动缩放子控件

    有没有办法在最大化屏幕或更改分辨率时使 Windows 窗体上的所有内容自动缩放 我发现手动缩放它是正确的 但是当切换分辨率时我每次都必须更改它 this AutoScaleDimensions new System Drawing Siz
  • 如何使用 ReactiveList 以便在添加新项目时更新 UI

    我正在创建一个带有列表的 Xamarin Forms 应用程序 itemSource 是一个reactiveList 但是 向列表添加新项目不会更新 UI 这样做的正确方法是什么 列表定义 listView new ListView var
  • 更改显示的 DPI 缩放大小使 Qt 应用程序的字体大小渲染得更大

    我使用 Qt 创建了一些 GUI 应用程序 我的 GUI 应用程序包含按钮和单选按钮等控件 当我运行应用程序时 按钮内的按钮和字体看起来正常 当我将显示器的 DPI 缩放大小从 100 更改为 150 或 200 时 无论分辨率如何 控件的
  • 将 viewbag 从操作控制器传递到部分视图

    我有一个带有部分视图的 mvc 视图 控制器中有一个 ActionResult 方法 它将返回 PartialView 因此 我需要将 ViewBag 数据从 ActionResult 方法传递到 Partial View 这是我的控制器

随机推荐

  • 在C++中连接字符串流

    如何连接两个字符串流 include
  • 长按按钮

    我想重复一个动作Button长时间按下 例如 MP3 阅读器的前进按钮 WinForm 中是否存在现有的 c 事件 我可以处理MouseDown启动一个计时器的事件 该计时器将执行该操作并停止MouseUp事件 但我正在寻找一种更简单的方法
  • 无法连接到远程://localhost:9999。连接超时 Jboss 7.1.1 Final

    我正在端口 9999 将构建部署到本地和远程 Jboss AS 7 1 1 Final Maven 使用 jboss 插件 jboss as maven plugin 7 1 1 Final 来管理服务器的构建 我已确认服务器已启动并正在运
  • Python:QML 布局内的 matplotlib 绘图

    考虑以下 python3 PyQt 代码来显示带有工具栏的交互式 matplotlib 图形 import sys sip import numpy as np from PyQt5 import QtGui QtWidgets from
  • 如何在 Rust 中按值传递装箱特征对象?

    我正在编写一些代码 并且有一个方法的特征 该方法需要self按价值 我想调用这个方法Box d 特征对象 消耗Box及其价值 这可能吗 如果是这样 怎么办 就代码而言 最小示例如下 不完整 代码 trait Consumable fn co
  • 保存后如何检索实体关系?

    我正在开发一个 RESTful 网络服务弹簧数据作为其数据访问层 由 JPA Hibernate 支持 领域实体之间存在关系是很常见的 例如 想象一个实体Product which has a Category entity 现在 当客户P
  • 从托管代码中释放非托管内存分配

    NET 应用程序调用 C dll C 代码为 char 数组分配内存并返回该数组作为结果 NET 应用程序以字符串形式获取此结果 C代码 extern C declspec dllexport char cdecl Run char res
  • 错误:找不到 com.android.support:support-v4:27.0.1

    将 Gradle 更新到 3 3 并将 Android Studio 版本更新到 3 0 1 后出现以下错误 Error 错误 找不到 com android support support v4 27 0 1 必需的 经过 项目 应用程序
  • 在 Python 中将日期时间列表转换为日期

    我有一个日期时间列表 想使用以下代码将其转换为日期 dates datetime strptime ts Y m d H M S for ts in timestamps date strings datetime strftime d m
  • 如何在 Ruby on Rails 中使用 if 语句为多个更改的字段创建回调?

    我想创建一个before save仅当三个字段 街道 城市 州 中的任何 但不一定是全部 发生更改时才会运行回调 你怎么做到这一点 谢谢 user rb class User before save run test method if g
  • 属性引用过多警告。可能的原因?

    我开发了一个应用程序 注意到我在 logcat 中收到很多 属性引用太多 警告 W ResourceType Too many attribute references stopped at 0x 我也使用 support v7 23 1
  • Jquery 文件上传 - 在 IE9 中不发送标头

    我在用着jQuery 文件上传上传文件 它不发送headers我设置到服务器 为什么是授权标头仅在 IE 中丢失 但在 chrome 中传递 这是代码 upload photo function var url api v1 upload
  • 在knitr输出中对长字符串进行文本换行(RStudio)

    我有一个很长的向量字符串 DNA 序列 最多包含几千个连续字符 我想将其添加到我的knitr 报告输出中 RStudio 在控制台中完美地处理文本换行 但当我生成 knit html 输出时 我只能看到一行文本 而且它只是从页面上消失 RS
  • 找不到符号 Java 错误?

    该代码在我使用时有效java util Arrays sort numbers 难道我做错了什么 这对我来说似乎很奇怪 import java util Arrays class Test public static void main S
  • 如何在javascript中清除div的文本内容?

    我暂时将内容添加到 div tempDiv 并将其添加到附加到显示的 div contentHere 的链接 我需要清除 tempDiv 的内容 以便链接不会相互附加 从而创建一串不链接到任何地方的 url document ready f
  • 术语“CPU 限制”和“I/O 限制”是什么意思?

    术语 CPU 限制 和 I O 限制 是什么意思 这非常直观 一个程序是CPU 限制如果 CPU 更快 它的运行速度是否会更快 也就是说 它的大部分时间只是使用 CPU 进行计算 计算 新数字的程序通常受 CPU 限制 它只是处理数字 一个
  • 如何从MultiOutputRegressor获取系数和特征重要性?

    我正在尝试使用 ElasticNet 和随机森林执行多输出回归 如下所示 from sklearn ensemble import RandomForestRegressor from sklearn multioutput import
  • Emacs 匹配标签高亮

    当启用 Paren 匹配突出显示 在 选项 菜单中 时 它可以很好地突出显示匹配的括号 除了 XML 标签之外 还有类似的东西吗 例如 如果我有
  • OpenCV 图像从 RGB 到 HSV 的转换

    当我在示例图像 RGB 上运行以下代码 然后对其进行处理以显示转换后的 HSV 图像时 两者似乎不同 谁能解释为什么会发生这种情况 OR你能建议一个解决方案来避免这种情况发生吗 因为毕竟是同一张图像 Mat img hsv img rgb
  • 使用调度程序更新 WPF 进度条

    我正在尝试使用调度程序更新进度条 但不知何故无法想到在哪里放置调度程序 调用以及在其中传递什么内容 我正在尝试导入文件 并且需要使用进度栏向用户显示导入了多少文件 所以我有一个代表 public delegate void Delegate