Deployment.Current.Dispatcher.BeginInvoke(() =>
{
//do something
});
---------------------------------------------------------------------------------------------
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.IO;
using System.Threading;
namespace SilverlightApplication1
{
public partial class MainPage : UserControl
{
SynchronizationContext syn;
public MainPage()
{
InitializeComponent();
}
private void button1_Click(object sender, RoutedEventArgs e)
{
syn = SynchronizationContext.Current;
string url = "http://www.baidu.com/";
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);
request.BeginGetResponse(new AsyncCallback(a), request);
}
private void a(IAsyncResult ia)
{
HttpWebRequest r = (HttpWebRequest)ia.AsyncState;
HttpWebResponse s = (HttpWebResponse)r.EndGetResponse(ia);
string str = "";
using (StreamReader sr =new StreamReader(s.GetResponseStream()))
{
str = sr.ReadToEnd();
}
syn.Post(getText, str);
}
private void getText(object text)
{
textBox1.Text = text.ToString();
}
}
}