準備
(なし)
デザイン
1. フォーム (Form1) にボタン (button1) を配置します。
2. フォーム (Form1) にリストボックス (listBox1) を配置します。
サンプルコード (C#)
// 名前空間の追加
using System.Threading;
// コード
private void button1_Click(object sender, EventArgs e)
{
Thread th1 = new Thread(new ThreadStart(ThreadTest));
th1.Start();
while (th1.IsAlive)
{
Application.DoEvents();
}
}
private void ThreadTest()
{
for (int i = 0; i < 10; i++)
{
Console.WriteLine(i.ToString());
}
}
解説
スレッドが終了するまで待機します。Join メソッドを使う場合と違い、フォームは固まったような状態とはなりません。
結果

動作確認環境
Visual Studio 2015 Professional (C# 6.0)