下面的代碼運行正常。我想知道它是否真的正確?C#4.0從Parallel.ForEach內部訪問窗體控件
if (openFileDialog.ShowDialog() == DialogResult.OK)
{
Parallel.ForEach(openFileDialog.FileNames, currentFile =>
{
try
{
StreamReader FileReader = new StreamReader(currentFile);
do
{
URLtextBox.Invoke(new MethodInvoker(delegate
{
URLtextBox.Text += SelectURLfromString(FileReader.ReadLine());
}));
}
while (FileReader.Peek() != -1);
FileReader.Close();
}
catch (System.Security.SecurityException ex)
{
...
}
catch (Exception ex)
{
...
}
});
}
否則我得到的不是「跨線程操作無效。控制‘URLtextBox’從另一個線程訪問」或卡住的應用。
哦,好評!謝謝。 – 84RR1573R 2010-12-18 00:33:47