Estoy intentando cargar un ListBox mediante programación asíncrona (Se que puedo hacerlo através de una Thread) y me va todo de lujo, pero cuando acabo justo de cargar el ListBox, me sale el siguiente error:
"Referencia a objeto no establecida como instancia de un objeto."
Aun que ahora no aparezcan, he probado a poner Try en cada parte del código en (button2_Click, LlenarElementosLista y en ResultadoOperacion) y en ninguna de ellas ha entrado en la excepción.
Este es el código:
Código:
También decirles que en el Inicio del formulario tengo puesta la etiqueta CheckForIllegalCrossThreadCalls = false; ya que sino, me fallaría nada más empezar el método. Pero... no entiendo y no sé por que me está fallando al finalizar, por favor, si alguien tiene experiencia en temas de Asincronía le agradecería enormemente que me saque de este bache. public delegate void LlenarLista(); LlenarLista delegado; private void button2_Click(object sender, EventArgs e) { delegado = new LlenarLista(LlenarElementosLista); IAsyncResult iaResultado = delegado.BeginInvoke(new AsyncCallback(ResultadoOperacion), null); } [OneWay] private void LlenarElementosLista() { lsLista.Items.Clear(); for (Int64 i = 0; i < 3; i++){ if (i == 99999) lsLista.Items.Add("Elemento " + i.ToString()); else lsLista.Items.Add("Elemento " + i.ToString()); } } private void ResultadoOperacion(IAsyncResult ar) { delegado.EndInvoke(ar); }