準備

(なし)

デザイン

1. フォーム (Form1) にボタン (button1) を配置します。
2. フォーム (Form1) にチェックボックス (checkBox1) を配置します。

サンプルコード (C#)

// 名前空間の追加
// (なし)

// コード
private void Form1_Load(object sender, EventArgs e)
{
  checkBox1.ThreeState = true;
  checkBox1.CheckState = CheckState.Indeterminate;
}

解説

通常はチェックが付いている、付いていないかの 2 種類ですが、中間状態を持たせることができます。

結果

動作確認環境

Visual Studio 2015 Professional (C# 6.0)