C#のツールボックスが表示されない・使えない時の原因と解決方法【Visual Studio対応】

はじめに

C#でWindowsフォームアプリやWPFアプリを作成していると、「ツールボックスが表示されない」「ButtonやTextBoxが出てこない」「ツールボックスからドラッグできない」といったトラブルが起こることがあります。

Visual Studioのツールボックスは、フォームや画面にボタン、テキストボックス、ラベルなどの部品を配置するための重要な機能です。そのため、ツールボックスが使えないと、C#の画面開発が思うように進みません。

ただし、C#のツールボックスが表示されない原因は、単純にウィンドウが閉じているだけの場合もあれば、デザイナー画面を開いていない、プロジェクトの種類が対応していない、Visual Studioの設定やキャッシュに不具合があるなど、いくつかのパターンに分かれます。

この記事では、Visual StudioでC#のツールボックスが表示されない・使えない時の原因と解決方法を、初心者にもわかりやすく解説します。

1. C#のツールボックスとは?Visual Studioでの役割と基本機能

C#のツールボックスとは、Visual Studioで画面を作成する際に使用するコントロールや部品を一覧表示するウィンドウです。

たとえば、Windowsフォームアプリで画面にボタンを追加したい場合、ツールボックスから「Button」をフォーム上にドラッグ&ドロップします。テキスト入力欄を追加したい場合は「TextBox」、説明文を表示したい場合は「Label」を使用します。

つまり、ツールボックスはC#の画面開発において、部品を選んで配置するためのパネルです。

1-1. ツールボックスでできること

Visual Studioのツールボックスでは、主に次のような操作ができます。

C#のフォームや画面にコントロールを追加したり、デザイナー上に部品をドラッグ&ドロップしたりできます。また、標準コントロールだけでなく、独自に作成したユーザーコントロールや、外部ライブラリで追加したコントロールを表示することも可能です。

代表的な使い方としては、Windowsフォームの画面にButtonを配置してクリックイベントを作成する、TextBoxを配置して入力欄を作る、DataGridViewを配置して一覧表を表示する、といった場面があります。

コードだけで画面を作ることもできますが、ツールボックスを使うと視覚的に部品を配置できるため、初心者でも画面レイアウトを作りやすくなります。

1-2. Windowsフォーム・WPF・ASP.NETでの使われ方の違い

C#のツールボックスは、プロジェクトの種類によって表示される内容や使い方が異なります。

Windowsフォームアプリでは、Button、TextBox、Label、ComboBox、DataGridViewなどのフォーム用コントロールが表示されます。これらをフォームデザイナーにドラッグ&ドロップして、画面を作成します。

WPFアプリでは、Button、TextBox、Label、Grid、StackPanelなど、WPF用のコントロールが表示されます。WPFの場合はXAMLで画面を定義するため、ツールボックスから配置するとXAMLコードも自動的に追加されます。

ASP.NETやWebアプリでは、プロジェクトの種類や使用している技術によってツールボックスの役割が変わります。Webフォームではツールボックスからサーバーコントロールを配置できますが、ASP.NET MVCやASP.NET Core Razor Pagesなどでは、HTMLやRazor構文を直接編集することが多く、Windowsフォームのようにツールボックスを使う場面は少なくなります。

このように、「C#のツールボックス」といっても、Windowsフォーム、WPF、ASP.NETでは表示される項目や使い方が異なります。

1-3. C#開発でツールボックスが必要になる場面

C#開発でツールボックスが必要になるのは、主に画面をデザインする場面です。

Windowsフォームアプリで業務システムの入力画面を作る場合、Label、TextBox、Button、ComboBoxなどを何度も使用します。これらを毎回コードで記述するよりも、ツールボックスから配置した方が効率的です。

WPFアプリでも、画面レイアウトを確認しながらButtonやTextBoxを配置したい場合にツールボックスが役立ちます。特にC#を学び始めたばかりの人にとって、ツールボックスは画面部品の種類を確認するための一覧表としても使えます。

一方で、コンソールアプリやクラスライブラリのように画面を持たないプロジェクトでは、基本的にツールボックスを使用しません。そのため、ツールボックスを開いても項目が表示されないことがあります。

1-4. ツールボックスに表示される代表的なコントロール

C#のWindowsフォーム開発でよく使われるツールボックスのコントロールには、次のようなものがあります。

Buttonは、クリック操作を受け付けるボタンです。TextBoxは、文字を入力するための入力欄です。Labelは、画面上に説明文や項目名を表示するために使います。

ComboBoxは、選択肢の中から値を選ぶためのドロップダウンリストです。CheckBoxは、オン・オフを選択するチェック項目です。RadioButtonは、複数の選択肢から1つを選ぶ時に使用します。

DataGridViewは、表形式のデータを表示・編集するためのコントロールです。PictureBoxは画像を表示するために使います。PanelやGroupBoxは、複数のコントロールをまとめるために使用します。

これらのコントロールがツールボックスに表示されない場合は、Visual Studioの表示状態やプロジェクトの種類、デザイナーの状態を確認する必要があります。

2. C#のツールボックスが表示されない時にまず確認すること

C#のツールボックスが表示されない場合、まずはVisual Studio上でツールボックスのウィンドウが閉じていないかを確認しましょう。

ツールボックスが消えたように見えても、単に非表示になっているだけの場合があります。また、自動的に隠れる設定になっていたり、ウィンドウレイアウトが崩れて画面外に移動していたりすることもあります。

2-1. Visual Studioのメニューからツールボックスを表示する方法

Visual Studioでツールボックスを表示するには、上部メニューから操作します。

メニューの「表示」をクリックし、その中にある「ツールボックス」を選択します。これで画面の左側または右側にツールボックスが表示されます。

英語版のVisual Studioを使用している場合は、「View」メニューから「Toolbox」を選択します。

ツールボックスが閉じているだけであれば、この操作だけで再表示できます。C#のツールボックスが見つからない時は、まずこの方法を試してください。

2-2. ショートカットキーでツールボックスを開く方法

Visual Studioでは、ショートカットキーでもツールボックスを表示できます。

一般的には「Ctrl + Alt + X」でツールボックスを開けます。メニューから探すのが面倒な場合や、ツールボックスを頻繁に表示・非表示にする場合は、このショートカットキーを覚えておくと便利です。

ただし、キーボード設定を変更している場合や、Visual Studioのバージョン・環境によってショートカットが異なる場合があります。その場合は、メニューの「表示」からツールボックスを開く方法を試してください。

2-3. ツールボックスが自動的に隠れている場合の確認

ツールボックスが表示されないように見える原因として、自動的に隠れる設定になっている場合があります。

Visual Studioのツールボックスには、ピンのアイコンがあります。ピンが横向きになっている場合、ツールボックスは自動的に隠れる状態です。この場合、画面端に「ツールボックス」というタブだけが表示され、マウスを合わせるとツールボックスが開きます。

常に表示したい場合は、ツールボックスを開いた状態でピンのアイコンをクリックし、固定表示に変更します。

ツールボックスが消えたと思った時は、画面の左端や右端に「ツールボックス」のタブがないか確認しましょう。

2-4. ウィンドウレイアウトのリセットで表示を戻す方法

ツールボックスが画面外に移動してしまったり、Visual Studioのウィンドウ配置が崩れてしまった場合は、ウィンドウレイアウトのリセットが有効です。

Visual Studioの上部メニューから「ウィンドウ」を選択し、「ウィンドウ レイアウトのリセット」をクリックします。確認メッセージが表示されたら、リセットを実行します。

これにより、ソリューションエクスプローラー、プロパティウィンドウ、ツールボックスなどの配置が初期状態に近い形へ戻ります。

ただし、自分でカスタマイズしたウィンドウ配置もリセットされるため、必要に応じて再配置してください。

3. ツールボックスにコントロールが表示されない主な原因

ツールボックス自体は表示されているのに、ButtonやTextBoxなどのコントロールが表示されないことがあります。

この場合、「ツールボックスが表示されない」のではなく、「ツールボックスの中身が表示されない」状態です。原因として多いのは、デザイナー画面を開いていないことや、現在開いているファイルがツールボックスに対応していないことです。

3-1. デザイナー画面を開いていない

C#のツールボックスにコントロールを表示するには、基本的にフォームデザイナーやWPFデザイナーなど、デザイン画面を開いている必要があります。

たとえば、WindowsフォームアプリでForm1.csのコード画面を開いているだけでは、ツールボックスにコントロールが表示されないことがあります。ButtonやTextBoxを表示したい場合は、Form1.csのデザイナー画面を開く必要があります。

ソリューションエクスプローラーでForm1.csを右クリックし、「デザイナーの表示」を選択します。フォームのデザイン画面が表示されると、ツールボックスにWindowsフォーム用のコントロールが表示されるようになります。

WPFの場合も同様に、XAMLのデザインビューを開いているか確認してください。

3-2. 対応していないファイルや画面を開いている

Visual Studioのツールボックスは、現在開いているファイルや編集画面によって表示内容が変わります。

たとえば、C#の通常のコードファイルを開いている時、ツールボックスにフォーム用のButtonやTextBoxが表示されないことがあります。これは不具合ではなく、コードエディター上ではドラッグ&ドロップで配置する対象がないためです。

また、Program.cs、Class1.cs、設定ファイル、JSONファイル、XMLファイルなどを開いている場合も、ツールボックスの内容が空になったり、「このグループには使用できるコントロールがありません」と表示されたりすることがあります。

ツールボックスの中身を表示したい場合は、Windowsフォームのデザイナー、WPFのXAMLデザイナー、Webフォームのデザイン画面など、ツールボックスに対応した画面を開きましょう。

3-3. プロジェクトの種類がツールボックスに対応していない

C#プロジェクトの種類によっては、ツールボックスをほとんど使わないものがあります。

たとえば、コンソールアプリは文字をコンソール画面に出力するアプリケーションであり、フォーム画面をデザインする機能はありません。そのため、ツールボックスにButtonやTextBoxが表示されなくても正常です。

クラスライブラリも、画面を作るプロジェクトではないため、通常はツールボックスを使いません。ASP.NET Core MVCやWeb APIのようなプロジェクトも、Windowsフォームのようなドラッグ&ドロップ型の画面作成とは異なるため、ツールボックスの使い方が限定されます。

C#のツールボックスを使って画面を作りたい場合は、WindowsフォームアプリやWPFアプリなど、デザイナーに対応したプロジェクトを作成しているか確認してください。

3-4. Visual Studioの読み込みやキャッシュに不具合がある

Visual Studioの状態によっては、ツールボックスの読み込みに失敗し、コントロールが表示されないことがあります。

特に、Visual Studioの起動直後、拡張機能を追加した後、NuGetパッケージを追加した後、プロジェクトを移行した後などに、ツールボックスの表示が不安定になることがあります。

このような場合は、Visual Studioを再起動するだけで直ることがあります。それでも改善しない場合は、ツールボックスのリセット、ウィンドウレイアウトのリセット、キャッシュの削除などを試します。

ツールボックスの表示がおかしい時は、まずVisual Studio側の一時的な不具合を疑ってみましょう。

3-5. 必要なワークロードやコンポーネントが不足している

Visual Studioでは、インストール時に選択したワークロードによって使用できる機能が変わります。

C#でWindowsフォームやWPFを使う場合は、「.NET デスクトップ開発」などのワークロードが必要です。これがインストールされていないと、WindowsフォームアプリやWPFアプリの作成に必要な機能が不足し、ツールボックスやデザイナーが正しく使えないことがあります。

Webアプリを開発する場合は、「ASP.NET と Web 開発」などのワークロードが必要になることがあります。

Visual Studio Installerを開き、必要なワークロードがインストールされているか確認しましょう。

4. Visual Studioでツールボックスを再表示・復元する解決方法

ここからは、C#のツールボックスを再表示・復元する具体的な方法を解説します。

ツールボックスが見つからない場合は、簡単な方法から順番に試すのがおすすめです。いきなりVisual Studioを再インストールする必要はありません。

4-1. 「表示」メニューからツールボックスを開く

最初に試すべき方法は、Visual Studioの「表示」メニューからツールボックスを開くことです。

上部メニューの「表示」をクリックし、「ツールボックス」を選択します。これでツールボックスウィンドウが表示されます。

もし「表示」メニューから開いても見つからない場合は、画面端に自動的に隠れていないか、別の場所にドッキングされていないかを確認してください。

ショートカットキーを使う場合は「Ctrl + Alt + X」を押します。ツールボックスをすばやく表示したい時に便利です。

4-2. デザイナー画面を開いてコントロールを表示する

ツールボックスは表示されているのに中身が空の場合は、デザイナー画面を開きます。

Windowsフォームの場合は、ソリューションエクスプローラーでForm1.csを右クリックし、「デザイナーの表示」を選択します。フォーム画面が表示された状態でツールボックスを確認すると、ButtonやTextBoxなどのコントロールが表示されるはずです。

WPFの場合は、MainWindow.xamlを開き、デザイン画面またはXAMLデザイナーが表示されているか確認します。XAMLエディターだけを開いている場合でもツールボックスが使えることはありますが、デザイナーが正しく読み込まれていないと項目が表示されないことがあります。

C#のツールボックスは、現在の編集対象に応じて内容が切り替わるため、必ず対象の画面を開いた状態で確認しましょう。

4-3. ツールボックスを右クリックして「リセット」を実行する

ツールボックスの中身がおかしい場合は、ツールボックスのリセットを試します。

ツールボックス上で右クリックし、「ツールボックスのリセット」を選択します。これにより、標準のコントロール一覧が再読み込みされます。

ButtonやTextBoxなどの標準コントロールが消えてしまった場合や、不要な項目が増えすぎて表示がおかしくなった場合に有効です。

ただし、ツールボックスに手動で追加した独自コントロールや外部コンポーネントの表示設定がリセットされることがあります。必要に応じて、後から再度追加してください。

4-4. ウィンドウレイアウトをリセットする

ツールボックスが画面に表示されない、どこにあるかわからない、ドッキング位置がおかしいという場合は、ウィンドウレイアウトをリセットします。

Visual Studioの上部メニューから「ウィンドウ」を選択し、「ウィンドウ レイアウトのリセット」をクリックします。確認画面でリセットを実行すると、Visual Studioのウィンドウ配置が初期状態に戻ります。

この方法は、ツールボックスだけでなく、プロパティウィンドウやソリューションエクスプローラーが消えた場合にも有効です。

ウィンドウ配置を大きくカスタマイズしている場合は、リセット後に再度調整が必要になります。

4-5. Visual Studioを再起動する

ツールボックスの表示不具合は、Visual Studioを再起動するだけで解消することがあります。

特に、プロジェクトを開いた直後にツールボックスが空になる場合や、NuGetパッケージを追加した後に項目が表示されない場合は、Visual Studioを一度終了してから再起動してみましょう。

また、Visual Studioの起動直後はデザイナーやツールボックスの読み込みに時間がかかることがあります。少し待ってから再度確認すると表示される場合もあります。

再起動しても直らない場合は、ワークロードの確認やVisual Studioの修復を検討します。

5. ツールボックスが使えない・ドラッグできない時の対処法

ツールボックスは表示されているのに、コントロールをドラッグできない、フォームに配置できないというケースもあります。

この場合は、ツールボックスそのものではなく、デザイナー画面やプロジェクトの状態に問題がある可能性があります。

5-1. デザインビューで開いているか確認する

まず確認したいのは、対象の画面をデザインビューで開いているかどうかです。

Windowsフォームの場合、コードエディターにButtonをドラッグしてもフォーム上に配置することはできません。Form1.csのコード画面ではなく、フォームデザイナーを開く必要があります。

ソリューションエクスプローラーでForm1.csを右クリックし、「デザイナーの表示」を選択します。フォームの見た目が表示された状態で、ツールボックスからButtonやTextBoxをドラッグします。

WPFの場合も、XAMLデザイナーや対応する編集画面を開いているか確認してください。

5-2. 対象のフォームや画面が編集可能か確認する

フォームや画面が読み取り専用になっていると、ツールボックスからコントロールを配置できないことがあります。

たとえば、ファイルが読み取り専用属性になっている、ソース管理でチェックアウトされていない、プロジェクトファイルに問題がある、といった場合です。

Form1.csやForm1.Designer.cs、MainWindow.xamlなどが編集可能な状態か確認しましょう。ファイルが読み取り専用になっている場合は、プロパティから読み取り専用を解除します。

また、ソース管理ツールを使用している場合は、対象ファイルが編集可能な状態になっているか確認してください。

5-3. プロジェクトのビルドエラーを解消する

C#プロジェクトにビルドエラーがあると、デザイナーが正しく読み込まれず、ツールボックスからコントロールを配置できないことがあります。

WindowsフォームやWPFのデザイナーは、プロジェクトのクラスや参照関係を読み込んで画面を表示します。そのため、コードにエラーがあるとデザイナーの表示に失敗する場合があります。

まずは「ビルド」メニューから「ソリューションのビルド」を実行し、エラー一覧を確認してください。エラーが表示されている場合は、先にそのエラーを修正します。

特に、InitializeComponentに関するエラー、参照切れ、名前空間の不一致、フォームクラスの継承ミスなどがあると、デザイナーが正しく動作しないことがあります。

5-4. Visual Studioを管理者権限で起動する

通常のC#開発では、Visual Studioを管理者権限で起動する必要はありません。しかし、特定の環境やプロジェクトでは、権限不足が原因で一部の機能が正しく動かないことがあります。

たとえば、管理者権限が必要なフォルダーにプロジェクトを置いている場合や、古いコンポーネント、COMコンポーネント、特殊な開発環境を使用している場合です。

このような場合は、Visual Studioのアイコンを右クリックし、「管理者として実行」を選択して起動します。その後、同じプロジェクトを開き、ツールボックスが使えるか確認してください。

ただし、毎回管理者権限で起動するのではなく、根本的にはプロジェクトの保存場所やアクセス権限を見直すことも大切です。

5-5. 拡張機能や設定の影響を確認する

Visual Studioに追加した拡張機能が原因で、ツールボックスやデザイナーの動作に影響が出ることがあります。

特に、UIデザイナー、コード生成、テーマ変更、外部コントロール関連の拡張機能を入れている場合は注意が必要です。

最近追加した拡張機能がある場合は、一時的に無効化してVisual Studioを再起動してみましょう。メニューの「拡張機能」からインストール済みの拡張機能を確認できます。

また、Visual Studioの設定を大きく変更した後に問題が起きた場合は、設定のリセットやウィンドウレイアウトのリセットも検討してください。

6. ツールボックスに項目を追加・削除・リセットする方法

C#のツールボックスには、標準コントロールだけでなく、独自コントロールや外部ライブラリのコントロールを追加できます。

一方で、不要な項目が増えすぎた場合は削除したり、初期状態にリセットしたりすることも可能です。

6-1. 標準コントロールを再表示する方法

Button、TextBox、Labelなどの標準コントロールが表示されない場合は、ツールボックスのリセットを試します。

ツールボックス上で右クリックし、「ツールボックスのリセット」を選択します。これにより、Visual Studioが標準コントロールを再読み込みします。

それでも表示されない場合は、デザイナー画面を開いているか、プロジェクトの種類がWindowsフォームやWPFなどに対応しているかを確認してください。

コンソールアプリやクラスライブラリでは、標準のフォームコントロールが表示されない場合があります。この場合は、プロジェクトの種類自体を見直す必要があります。

6-2. 独自コントロールをツールボックスに追加する方法

自分で作成したユーザーコントロールをツールボックスに追加したい場合は、プロジェクトをビルドした後、ツールボックスに表示されるか確認します。

Windowsフォームの場合、UserControlを作成してビルドすると、ツールボックスに自動的に表示されることがあります。表示されない場合は、ツールボックス上で右クリックし、「アイテムの選択」を選びます。

その後、対象のアセンブリやコンポーネントを選択して追加します。独自コントロールが正しく作成されていない場合や、ビルドエラーがある場合は表示されないことがあるため、先にプロジェクトを正常にビルドしておきましょう。

6-3. NuGetで追加したコントロールを表示する方法

NuGetで外部コントロールやUIライブラリを追加した場合、すぐにツールボックスへ表示されないことがあります。

まずはNuGetパッケージが正しくインストールされているか確認し、プロジェクトをビルドします。その後、Visual Studioを再起動するとツールボックスに反映される場合があります。

表示されない場合は、ツールボックスを右クリックして「アイテムの選択」を開き、追加したライブラリのコントロールを選択します。

ただし、すべてのNuGetライブラリがツールボックスに表示されるわけではありません。コードやXAMLで使用する前提のライブラリもあるため、ライブラリの公式ドキュメントで使い方を確認することが重要です。

6-4. 不要なツールボックス項目を削除する方法

ツールボックスに不要な項目が増えた場合は、対象の項目を右クリックして削除できます。

ただし、標準コントロールを削除してしまった場合でも、ツールボックスのリセットを行えば再表示できることがあります。

外部コントロールや独自コントロールを削除したい場合は、ツールボックス上の表示を削除するだけでなく、不要な参照やNuGetパッケージも整理するとよいでしょう。

ツールボックスを整理しておくと、必要なコントロールを探しやすくなり、C#の画面開発が効率的になります。

6-5. ツールボックスの初期化で注意すべきこと

ツールボックスのリセットや初期化は便利ですが、注意点もあります。

リセットを行うと、標準コントロールの表示は戻る一方で、手動で追加した独自コントロールや外部コンポーネントの設定が消えることがあります。その場合は、再度ツールボックスに追加する必要があります。

また、リセットしてもプロジェクトの種類が対応していなければ、ButtonやTextBoxは表示されません。たとえば、コンソールアプリを開いた状態でツールボックスをリセットしても、Windowsフォーム用のコントロールが使えるようになるわけではありません。

ツールボックスを初期化する前に、現在開いている画面がデザイナーであること、プロジェクトが対応していることを確認しましょう。

7. プロジェクト別に見るツールボックスの表示トラブル

C#のツールボックスに関するトラブルは、プロジェクトの種類によって原因が異なります。

ここでは、Windowsフォーム、WPF、ASP.NET、.NET Frameworkと.NET、Visual Studio Codeの違いに分けて解説します。

7-1. Windowsフォームでツールボックスが表示されない場合

Windowsフォームアプリでツールボックスが表示されない場合は、まずフォームデザイナーを開いているか確認します。

Form1.csのコード画面ではなく、Form1.csを右クリックして「デザイナーの表示」を選択してください。フォームの見た目が表示されると、ツールボックスにButton、TextBox、Labelなどが表示されます。

それでも表示されない場合は、プロジェクトにビルドエラーがないか確認します。Form1.Designer.csに問題がある場合や、InitializeComponentが正しく認識されていない場合、デザイナーが開けないことがあります。

また、Visual Studio Installerで「.NET デスクトップ開発」がインストールされているかも確認しましょう。

7-2. WPFでツールボックスが表示されない場合

WPFでツールボックスが表示されない場合は、MainWindow.xamlなどのXAMLファイルを開いているか確認します。

WPFでは、画面の見た目をXAMLで定義します。そのため、ツールボックスからButtonやTextBoxを配置すると、XAMLコードにも反映されます。

XAMLデザイナーが正しく読み込まれていない場合、ツールボックスの項目が表示されない、またはドラッグできないことがあります。この場合は、プロジェクトをビルドし、XAMLのエラーを修正してください。

また、WPFプロジェクトではGrid、StackPanel、DockPanelなどのレイアウト用コントロールもよく使います。Windowsフォームとは表示される項目が異なるため、混同しないようにしましょう。

7-3. ASP.NETやWebアプリでツールボックスが使えない場合

ASP.NETやWebアプリでは、プロジェクトの種類によってツールボックスの使い方が大きく変わります。

ASP.NET Webフォームでは、ツールボックスからサーバーコントロールを配置できる場合があります。しかし、ASP.NET MVC、ASP.NET Core MVC、Razor Pages、Blazorなどでは、HTML、Razor構文、コンポーネントをコードで記述することが多く、Windowsフォームのようにツールボックスから部品をドラッグする開発スタイルとは異なります。

そのため、Webアプリでツールボックスに項目が表示されない場合でも、不具合とは限りません。使用しているプロジェクトテンプレートが、ツールボックスによるデザインに対応しているか確認しましょう。

Web開発に必要な機能が不足している場合は、Visual Studio Installerで「ASP.NET と Web 開発」ワークロードを追加します。

7-4. .NET Frameworkと.NETの違いによる影響

C#のWindowsフォームやWPFには、.NET Framework版と、.NET 6、.NET 7、.NET 8などの新しい.NET版があります。

Visual Studioのバージョンやプロジェクト形式によって、デザイナーやツールボックスの表示に違いが出ることがあります。古いVisual Studioで新しい.NETのプロジェクトを開いた場合、デザイナーが正しく表示されないこともあります。

また、古い.NET Framework向けの外部コントロールが、新しい.NETのWindowsフォームやWPFに対応していない場合もあります。その場合、ツールボックスに表示されない、配置してもエラーになる、といった問題が起こります。

使用しているVisual Studioのバージョン、対象フレームワーク、外部コントロールの対応状況を確認しましょう。

7-5. Visual Studio Codeではツールボックスが使えない理由

C#開発ではVisual Studio Codeを使うこともありますが、Visual Studio CodeにはVisual Studioのような本格的なツールボックスやWindowsフォームデザイナーは基本的にありません。

Visual Studio Codeは軽量なコードエディターであり、C#のコード編集、デバッグ、ターミナル操作には便利ですが、WindowsフォームやWPFの画面をドラッグ&ドロップで作成する用途には向いていません。

C#でツールボックスを使って画面を作成したい場合は、Visual Studio Codeではなく、Visual Studioを使用する必要があります。

「C#のツールボックスがない」と感じている場合、使っているのがVisual StudioなのかVisual Studio Codeなのかを確認しましょう。この2つは名前が似ていますが、機能は大きく異なります。

8. それでも解決しない場合の最終対処法

ここまでの方法を試してもC#のツールボックスが表示されない場合は、Visual Studioのインストール状態やキャッシュ、プロジェクト自体に問題がある可能性があります。

最終的な対処法として、ワークロードの追加、Visual Studioの修復、キャッシュ削除、最新版への更新、プロジェクトの作り直しを検討します。

8-1. Visual Studio Installerで必要なワークロードを追加する

Visual Studio Installerを開き、現在使用しているVisual Studioの「変更」を選択します。

C#でWindowsフォームやWPFを使う場合は、「.NET デスクトップ開発」にチェックが入っているか確認します。Webアプリを開発する場合は、「ASP.NET と Web 開発」が必要になることがあります。

必要なワークロードにチェックを入れたら、変更を適用します。インストールが完了したらVisual Studioを再起動し、プロジェクトを開き直してください。

ツールボックスやデザイナー関連の機能は、必要なワークロードが不足していると正しく動作しないことがあります。

8-2. Visual Studioを修復する

Visual Studio自体に問題がある場合は、Visual Studio Installerから修復を実行します。

Visual Studio Installerを開き、対象のVisual Studioに対して「その他」またはメニューを選択し、「修復」を実行します。修復により、破損したファイルや不足している構成が再設定される場合があります。

ツールボックスだけでなく、デザイナー、ビルド、拡張機能、プロジェクト読み込みなどに不具合が出ている場合は、修復が有効なことがあります。

修復後はVisual Studioを再起動し、C#プロジェクトを開いてツールボックスの状態を確認してください。

8-3. 設定ファイルやキャッシュを削除する

Visual Studioのキャッシュや一時ファイルが原因で、ツールボックスが正しく表示されないことがあります。

この場合、Visual Studioを終了したうえで、ユーザー設定やキャッシュを削除することで改善する場合があります。ただし、設定ファイルを削除すると、Visual Studioの一部設定が初期化される可能性があります。

安全に進めるためには、まずVisual Studioの通常機能であるツールボックスのリセット、ウィンドウレイアウトのリセット、Visual Studioの修復を試してください。それでも解決しない場合に、キャッシュ削除を検討します。

企業や学校のPCを使用している場合は、管理者権限やポリシーの制限があることもあるため、管理者に確認するとよいでしょう。

8-4. Visual Studioを最新版に更新する

Visual Studioのバージョンが古い場合、新しい.NETプロジェクトや新しいテンプレートに対応していないことがあります。

特に、.NET 6以降のWindowsフォームやWPFを使用している場合、Visual Studioのバージョンが古いとデザイナーが正しく動作しない可能性があります。

Visual Studio Installerを開き、更新プログラムがある場合は最新版に更新してください。更新後にプロジェクトを開き直すことで、ツールボックスやデザイナーの問題が解決する場合があります。

C#の開発環境では、Visual Studio、.NET SDK、プロジェクトの対象フレームワークの組み合わせが重要です。

8-5. プロジェクトを作り直して切り分ける

どうしても原因がわからない場合は、新しいプロジェクトを作成してツールボックスが正常に表示されるか確認します。

たとえば、新規にWindowsフォームアプリを作成し、Form1のデザイナーを開いてButtonやTextBoxが表示されるか試します。新しいプロジェクトで正常に表示される場合、Visual Studio全体ではなく、元のプロジェクト側に問題がある可能性が高いです。

逆に、新しいプロジェクトでもツールボックスが表示されない場合は、Visual Studioのインストール状態や設定に問題があると考えられます。

このように、新規プロジェクトで切り分けることで、原因がVisual Studio側なのか、プロジェクト側なのか判断しやすくなります。

9. C#のツールボックスに関するよくある質問

ここでは、C#のツールボックスが表示されない・使えない時によくある質問をまとめます。

9-1. ツールボックスが空になるのはなぜ?

ツールボックスが空になる主な原因は、デザイナー画面を開いていないことです。

C#のコードファイルやコンソールアプリを開いている場合、ツールボックスに表示できるコントロールがないため、空に見えることがあります。

WindowsフォームでButtonやTextBoxを表示したい場合は、Form1.csを右クリックして「デザイナーの表示」を選択してください。WPFの場合は、XAMLファイルを開き、デザイナーが正しく表示されているか確認します。

また、Visual Studioの読み込み不具合やキャッシュの問題で空になることもあるため、再起動やツールボックスのリセットも有効です。

9-2. ツールボックスのリセットをしても大丈夫?

基本的には、ツールボックスのリセットをしても標準コントロールは再表示できます。

ただし、手動で追加した独自コントロールや外部コンポーネントの表示設定が消える場合があります。その場合は、再度「アイテムの選択」などから追加し直す必要があります。

ButtonやTextBoxなどの標準コントロールが消えた場合や、ツールボックスの表示がおかしい場合には、リセットは有効な対処法です。

不安な場合は、まずVisual Studioの再起動やデザイナー画面の確認を行い、それでも直らない場合にリセットを実行しましょう。

9-3. ツールボックスにButtonやTextBoxが出ない時は?

ButtonやTextBoxが出ない時は、まずWindowsフォームまたはWPFのデザイナー画面を開いているか確認します。

Windowsフォームの場合は、Form1.csのコードではなく、フォームデザイナーを開く必要があります。ソリューションエクスプローラーでForm1.csを右クリックし、「デザイナーの表示」を選択してください。

それでも表示されない場合は、プロジェクトの種類がコンソールアプリやクラスライブラリになっていないか確認します。画面を持たないプロジェクトでは、ButtonやTextBoxを配置する対象がありません。

さらに、Visual Studio Installerで「.NET デスクトップ開発」が入っているかも確認しましょう。

9-4. Visual Studio 2022でも同じ方法で解決できる?

Visual Studio 2022でも、基本的な解決方法は同じです。

「表示」メニューからツールボックスを開く、Ctrl + Alt + Xで表示する、デザイナー画面を開く、ツールボックスをリセットする、ウィンドウレイアウトをリセットする、といった方法はVisual Studio 2022でも有効です。

ただし、使用している.NETのバージョンやプロジェクトテンプレートによって、デザイナーの対応状況が異なる場合があります。古いプロジェクトをVisual Studio 2022で開く場合や、新しい.NETプロジェクトを古いVisual Studioで開く場合は、互換性に注意してください。

問題が解決しない場合は、Visual Studio 2022を最新版に更新することも重要です。

9-5. ツールボックスとデザイナーの違いは?

ツールボックスは、画面に配置できる部品を一覧表示するウィンドウです。Button、TextBox、Labelなどのコントロールを選ぶ場所だと考えるとわかりやすいです。

一方、デザイナーは、実際に画面を編集するための作業領域です。Windowsフォームならフォームデザイナー、WPFならXAMLデザイナーが該当します。

ツールボックスから選んだコントロールを、デザイナー上にドラッグ&ドロップして配置します。つまり、ツールボックスは部品の一覧、デザイナーは部品を配置する画面です。

ツールボックスだけを開いても、デザイナーが開かれていなければコントロールを配置できません。C#の画面開発では、ツールボックスとデザイナーをセットで使うと考えるとよいでしょう。

まとめ

C#のツールボックスが表示されない・使えない場合は、まずVisual Studioの「表示」メニューからツールボックスを開き、デザイナー画面を表示しているか確認しましょう。

ツールボックスが空になる原因の多くは、コード画面や対応していないファイルを開いていることです。WindowsフォームでButtonやTextBoxを使いたい場合は、Form1.csのデザイナー画面を開く必要があります。WPFの場合は、XAMLデザイナーや対象のXAMLファイルを確認します。

それでも解決しない場合は、ツールボックスのリセット、ウィンドウレイアウトのリセット、Visual Studioの再起動を試します。さらに、必要なワークロードが不足していないか、Visual Studio Installerで「.NET デスクトップ開発」や「ASP.NET と Web 開発」がインストールされているか確認してください。

また、コンソールアプリやクラスライブラリ、Visual Studio Codeでは、Visual StudioのWindowsフォームデザイナーのようなツールボックスは基本的に使えません。C#のツールボックスを利用したい場合は、Visual StudioでWindowsフォームやWPFなどの対応プロジェクトを使用しましょう。

ツールボックスのトラブルは、原因を順番に切り分ければ解決できることがほとんどです。表示されない、使えない、ドラッグできないといった場合は、デザイナー、プロジェクトの種類、Visual Studioの設定、ワークロードの順に確認してみてください。