社区
WPF/Silverlight
帖子详情
关于Silverlight中Model子窗体中的界面刷新问题.
Wyvern2000
2010-10-06 09:38:32
在主窗体中做一些比较复杂耗时的操作, 需要用一个子窗体显示进度条, 以指示当前操作的进度.
由于某些原因, 无法将这些耗时的操作移到线程中进行, 所以只好找在操作中释放资源, 以刷新子窗体的方法.
以前在 Delphi 中可以用 Application.ProcessMessages;
而在 VB 则可以用 DoEvents( ); 进行界面的刷新,
但在 Silverlight 中尚未找到, 请各位达人帮忙.
谢谢!
...全文
122
6
打赏
收藏
关于Silverlight中Model子窗体中的界面刷新问题.
在主窗体中做一些比较复杂耗时的操作, 需要用一个子窗体显示进度条, 以指示当前操作的进度. 由于某些原因, 无法将这些耗时的操作移到线程中进行, 所以只好找在操作中释放资源, 以刷新子窗体的方法. 以前在 Delphi 中可以用 Application.ProcessMessages; 而在 VB 则可以用 DoEvents( ); 进行界面的刷新, 但在 Silverlight 中尚未找到, 请各位达人帮忙. 谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ycg_893
2010-10-08
打赏
举报
回复
一个简单的办法试试,进行耗时操作前先打开进度窗口,只有进度窗口正常打开完后告诉主窗口,主窗口才开始操作。
Wyvern2000
2010-10-08
打赏
举报
回复
我现在在试用 Dispatcher.BeginInvoke( ),
发现在循环中使用 BeginInvoke( ) 是无效的, 界面不刷新.
必须在 BeginInvoke( ) 中递归调用 BeginInvoke( ) 才能正常刷新界面.
这又是什么原因呢?
Wyvern2000
2010-10-07
打赏
举报
回复
以前在 Delphi 中,只要在循环体中加一句 Application.ProcessMessages( ) 就可以将子窗体刷新了.
在 VB 中, 在循环体中加一句 DoEvents( ) 也可以.
但在 Silverlight 中找到类似的语句.
Wyvern2000
2010-10-07
打赏
举报
回复
"由于某些原因, 无法将这些耗时的操作移到线程中进行."
是单线程的, 在主窗体中做耗时的操作, 但是要同步更新子窗体的进度.
现在的情况是, 由于主窗体一直在循环中处理, 导致子窗体没有CPU资源, 所以子窗体一直不显示, 直到最后操作结束了, 子窗体才闪了一下.
Sunpire
2010-10-07
打赏
举报
回复
其实在 Silverlight 中,要显示进度可以不使用多线程的,使用 数据绑定 就可以了。
数据绑定 是通过事件订阅的方式更新前台的显示的,并且解决了跨线程访问控件的问题。
jv9
2010-10-07
打赏
举报
回复
" 所以只好找在操作中释放资源, 以刷新子窗体的方法."
这个不是很明白什么意思。楼主是想问Silverlight多线程的操作么?
Linux操作系统相关习题集
Linux操作系统相关习题集,包含常用名、Linux系统基础知识等
基于java的-30-「计算机毕业设计」基于net的湖南特产销售网站-源码.zip
提供的源码资源涵盖了Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码
中
配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和
问题
解决能力。此外,在求职或创业过程
中
,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码
中
的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用
问题
欢迎随时与博主沟通,第一时间进行解答!
JVM+Java程序运行过程内存分配图解
1、JVM 内存分配图解的 Visio 工程图。 2、直接下载使用、可自行调整和修改
IOC智慧运营
中
心平台整体解决方案qy.pptx
IOC智慧运营
中
心平台整体解决方案qy.pptx
node-v12.22.8-x86.msi
Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践
中
,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。
WPF/Silverlight
8,735
社区成员
12,029
社区内容
发帖
与我相关
我的任务
WPF/Silverlight
WPF/Silverlight相关讨论
复制链接
扫一扫
分享
社区描述
WPF/Silverlight相关讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章