Relativamente nuevo para C# y quería intentar jugar con algunas API de servicios web de terceros con él.UnauthorizedAccessException: Acceso de hilos cruzados no válido en la aplicación Silverlight (XAML/C#)
Este es el código XAML
<Grid x:Name="ContentGrid" Grid.Row="1">
<StackPanel>
<Button Content="Load Data" Click="Button_Click" />
<TextBlock x:Name="TwitterPost" Text="Here I am"/>
</StackPanel>
</Grid>
y aquí está el código C#
private void Button_Click(object sender, RoutedEventArgs e)
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://api.twitter.com/1/users/show/keykoo.xml");
request.Method = "GET";
request.BeginGetResponse(new AsyncCallback(twitterCallback), request);
}
private void twitterCallback(IAsyncResult result)
{
HttpWebRequest request = (HttpWebRequest)result.AsyncState;
HttpWebResponse response = (HttpWebResponse)request.EndGetResponse(result);
TextReader reader = new StreamReader(response.GetResponseStream());
string strResponse = reader.ReadToEnd();
Console.WriteLine("I am done here");
TwitterPost.Text = "hello there";
}
supongo que esto es causado por el hecho de que la devolución de llamada se ejecuta en un hilo separado de la ¿UI? ¿Cuál es el flujo normal para tratar este tipo de interacciones en C#?
Gracias.
Gracias a todos por sus respuestas. – PolandSpring
Otra forma de hacerlo es utilizar el this.Dispatcher pero este enlace es muy útil para usted. http://humrahimcs.wordpress.com/wp-admin/post.php?post=420&action=edit&message=6&postpost=v2 – DoNetDeveloper
¿Por qué no acepta la respuesta de Steve Willcock? –