using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using System.Threading;
namespace SilverlightApplication28
{
public partial class MainPage : UserControl
{
private Thread myThread = null;//定义线程
private delegate void MyDelegate(object param);//定义委托
private StackPanel TestStackPanel = null;
private Button TestButton = null;
private TextBlock TestTextBlock = null;
public MainPage()
{
InitializeComponent();
TestStackPanel = new StackPanel();
TestStackPanel.VerticalAlignment = VerticalAlignment.Center;
TestStackPanel.HorizontalAlignment = HorizontalAlignment.Center;
LayoutRoot.Children.Add(TestStackPanel);
TestButton = new Button();
TestButton.Width = 200;
TestButton.Height = 24;
TestButton.Content = "Test";
TestButton.Click += new RoutedEventHandler(TestButton_Click);
TestStackPanel.Children.Add(TestButton);
TestTextBlock = new TextBlock();
TestStackPanel.Children.Add(TestTextBlock);
}
void TestButton_Click(object sender, RoutedEventArgs e)
{
string str = "welcome:";
myThread = new Thread(ThreadMethod);
myThread.Start(str);
}
private void ThreadMethod(object param)
{
MyDelegate myDelegate = new MyDelegate(DelegateMethod);
while (true)
{
this.Dispatcher.BeginInvoke(myDelegate,param);
Thread.Sleep(1000);
}
}
private void DelegateMethod(object param)
{
TestTextBlock.Text = param + DateTime.Now.ToString();
}
}
}
silverlight 线程委托实现时间控件
最新推荐文章于 2019-07-07 16:12:16 发布