C# を使用した WPF アプリケーションにはバックエンドがあります。マルチスレッドにしたい。
さまざまなものをリストするコンボボックスがあります。また、ユーザーはそれらを非同期で選択できます。
コンボボックス 1 に 1.ABC 2.BCD 3.CDE が含まれているとします。
ユーザーが ABC を選択すると実行が開始され、ABC をクリックする前に BCD をクリックすると、再び実行されます。
そのように、マルチスレッドの wpf アプリケーションが必要です。
private void comboBox1_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
System.Windows.Forms.MessageBox.Show( "Executing " + newList[ comboBox1.SelectedIndex] + " test case" );
this.IsEnabled = false;
Thread objThread = new Thread(() =>
{
Process p = new Process();
p.StartInfo.WorkingDirectory = listofDirs[comboBox1.SelectedIndex] + "\\" + newList[comboBox1.SelectedIndex] + "\\" + @"\bin\Release";
p.StartInfo.FileName = listofDirs[comboBox1.SelectedIndex] + "\\" + newList[comboBox1.SelectedIndex] + "\\" + @"\bin\Release" + "\\" + newList[comboBox1.SelectedIndex] + ".exe";
p.StartInfo.CreateNoWindow = false;
p.StartInfo.WindowStyle = ProcessWindowStyle.Maximized;
p.Start();
p.WaitForExit();
});
objThread.IsBackground = true;
objThread.Priority = ThreadPriority.AboveNormal;
objThread.Start();
this.IsEnabled = true;
}