WPF Timer疑难问题解答

开发 开发工具
当我们在操作WPF Timer时,想要实现一个延时异步加载的需求,但是实际却每次都给创建了所有的Canvas。解决方法就是改为同步创建。

WPF Timer在实际使用中出现了一些问题, 经过2天努力的调试才初步发现了其中的问题。并经过各种资料的查找,终于初步解决了这一问题。#t#

我使用 new System.Threading.Timer(TimerCallbacefun, null, 300,0);

 

  1. void TimerCallbacefun
    (object state)  
  2. {  
  3. this.Dispatcher.BeginInvoke
    ((ThreadStart)delegate   
  4. {   
  5. this.container.Children.Clear();   
  6. for (int i=0;i<6;i++)   
  7. {   
  8. mb.Page.Presentation = 
    m_page.Presentation;   
  9. mb.Page = m_page;   
  10. FrameworkElement uiEle = 
    new Canvas(){  
  11. Top=100*i,  
  12. Height=100,  
  13. width=100 
  14. };   
  15. this.container.Children.
    Add(uiEle);   
  16. }   
  17. });  

 

这么做是为了延时异步加载, 但是不是每次都能创建所有的Canvas, 不知道WPF Timer到底什么问题。

WPF Timer问题解决方法: 改为同步创建, 或者使用线程异步创建都能成功。

责任编辑:曹凯 来源: 博客园
相关推荐

2009-12-24 18:03:35

WPF线程渲染

2011-08-03 13:25:19

布线系统规划

2011-05-10 14:14:10

OSPF路由

2011-05-10 14:32:19

OSPF路由

2010-10-09 17:19:50

mysql存储过程

2010-09-13 14:43:47

无线技术常见问题

2009-10-13 14:56:00

CCNA培训

2010-07-26 13:05:44

Perl子程序参数

2011-08-09 15:10:00

SQLite

2011-07-13 17:57:15

SQLite

2011-10-20 09:57:58

AS400 FTPFTP

2023-10-10 08:01:13

2009-10-27 11:10:56

linux问题解答

2010-05-12 17:04:20

BlackBerry开

2010-12-27 14:50:16

Windows 部署服

2011-04-14 10:46:23

2009-07-31 12:16:58

linux无盘系统

2009-12-03 18:09:51

Visual Stud

2011-07-21 11:19:51

JAVA

2015-06-30 12:39:33

公有云问题解答
点赞
收藏

51CTO技术栈公众号