WPF Timer疑難問題解答
作者:佚名
當我們在操作WPF Timer時,想要實現一個延時異步加載的需求,但是實際卻每次都給創建了所有的Canvas。解決方法就是改為同步創建。
WPF Timer在實際使用中出現了一些問題, 經過2天努力的調試才初步發現了其中的問題。并經過各種資料的查找,終于初步解決了這一問題。#t#
我使用 new System.Threading.Timer(TimerCallbacefun, null, 300,0);
- void TimerCallbacefun
(object state) - {
- this.Dispatcher.BeginInvoke
((ThreadStart)delegate - {
- this.container.Children.Clear();
- for (int i=0;i<6;i++)
- {
- mb.Page.Presentation =
m_page.Presentation; - mb.Page = m_page;
- FrameworkElement uiEle =
new Canvas(){ - Top=100*i,
- Height=100,
- width=100
- };
- this.container.Children.
Add(uiEle); - }
- });
- }
這么做是為了延時異步加載, 但是不是每次都能創建所有的Canvas, 不知道WPF Timer到底什么問題。
WPF Timer問題解決方法: 改為同步創建, 或者使用線程異步創建都能成功。
責任編輯:曹凱
來源:
博客園