Form is not responding....
using System;
using System;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
for (int i = 0; i < 1000; i++) treeView1.Nodes.Add(i.ToString());
}
private void button1_Click(object sender, EventArgs e)
{
backgroundWorker1.RunWorkerAsync();
}
private void backgroundWorker1_DoWork(object sender, System.ComponentModel.DoWorkEventArgs e)
{
treeView1.Invoke((MethodInvoker)delegate
{
foreach (TreeNode node in treeView1.Nodes)
{
for (int j = 0; j < 1000; j++) node.Text = (j * j).ToString();
}
});
}
}
}
There is no problem.
using System;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
CheckForIllegalCrossThreadCalls = false;
for (int i = 0; i < 1000; i++) treeView1.Nodes.Add(i.ToString());
}
private void button1_Click(object sender, EventArgs e)
{
backgroundWorker1.RunWorkerAsync();
}
private void backgroundWorker1_DoWork(object sender, System.ComponentModel.DoWorkEventArgs e)
{
foreach (TreeNode node in treeView1.Nodes)
{
for (int j = 0; j < 1000; j++) node.Text = (j * j).ToString();
}
}
}
}
But I don't want to use "CheckForIllegalCrossThreadCalls = false"