在我的应用程序中,我从我的文件中获取文件Listbox
并使用我的类运行这些文件,如果我想在应用程序完成所有文件后继续播放我的列表框中的所有文件,我也有循环选项,即重新开始所有文件所以我把存在于我的播放按钮中的任务放在里面,但它只在第一次运行我的文件,之后即使我numericUpDownLoops.Value == 2
和loopCount = 1
NumericUpDown numericUpDownLoops;
private void btnPlay_Click(object sender, EventArgs e)
{
int loopCount = 0;
if (loopCount < numericUpDownLoops.Value)
{
Task.Factory.StartNew(() =>
{
var files = listBoxFiles.Items.Cast<string>().ToList();
Parallel.ForEach(files,
new ParallelOptions
{
MaxDegreeOfParallelism = 1 // limit number of parallel threads
},
file =>
{
//play my file
});
}).ContinueWith(
t =>
{
loopCount++;
}
, TaskScheduler.FromCurrentSynchronizationContext() // to ContinueWith (update UI) from UI thread
);
}
}