ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
エラー内容
Visual Studio で Windows フォーム(Form)を自動生成したとき、「値が有効な範囲にありません」エラーが発生します。プロジェクトを新規作成した直後や、「追加 → フォーム (Windows フォーム)」でフォームを追加した直後、まだ自分では何もコードを書いていない状態で発生します。
値が有効な範囲にありません。
(英語版: Value does not fall within the expected range.)
原因
このメッセージは .NET の ArgumentException の既定のメッセージ(内部的なエラーコード E_INVALIDARG / 0x80070057 に対応)で、「関数に渡された値が想定外だった」ことしか表していません。自動生成直後に出る場合は、生成されたコードではなく Visual Studio 自身(デザイナー、テンプレート処理、拡張機能、内部キャッシュ)の一時的な不整合が原因であることがほとんどです。
考えられる要因は次のとおりです。いずれも「どれが原因か」をエラー文だけから特定するのは難しいため、下の対処を手軽なものから順に試します。
- Visual Studio のプロセス内に残った古い状態(長時間起動したまま、ソリューションの切り替えを繰り返した等)
- ソリューション単位の作業ファイル(
.vsフォルダ内の.suoなど)の破損 - Visual Studio のコンポーネントキャッシュ(ComponentModelCache)の不整合。更新や拡張機能のインストール直後に起きやすい
- 拡張機能の不具合
対処法
1. Visual Studio を再起動する
Visual Studio を再起動すれば解消されることを確認しています。すべての Visual Studio ウィンドウを閉じ、タスクマネージャーで devenv.exe が残っていないことを確認してから起動し直します。
2. デザイナーを閉じてリビルドする
- 開いている「Form1.cs [デザイン]」のタブをすべて閉じる
- メニューの「ビルド → ソリューションのクリーン」→「ソリューションのリビルド」
- ソリューション エクスプローラーで Form1.cs をダブルクリックしてデザイナーを開き直す
3. 作業ファイルを削除する(Visual Studio を閉じた状態で)
ソリューションのフォルダにある次のフォルダを削除します。いずれも再ビルドや再起動で自動的に作り直されるもので、ソースコードは含まれません。
.vs(隠しフォルダ。ウィンドウ配置などのユーザー設定.suoが入っている。削除すると開いていたタブなどの状態はリセットされる)- 各プロジェクトの
binとobj
4. ComponentModelCache を削除する
Visual Studio を閉じてから、次のフォルダ内の ComponentModelCache フォルダを削除します。次回起動時に再作成されます。
%LOCALAPPDATA%\Microsoft\VisualStudio\<バージョン番号_インスタンスID>\ComponentModelCache
例: VS 2019 なら 16.0_xxxxxxxx、VS 2022 なら 17.0_xxxxxxxx
5. 拡張機能を疑う・Visual Studio を修復する
- コマンドプロンプトで
devenv /SafeModeを実行すると、拡張機能を読み込まずに起動できる。この状態でエラーが出なければ、最近入れた拡張機能を無効にして確かめる - 「Visual Studio Installer」から更新を適用する。既知の不具合が修正されていることがある
- それでも直らない場合は、Visual Studio Installer の「その他 → 修復」を実行する
確認したいポイント
| 確認項目 | 見るところ |
|---|---|
| プロジェクトの種類 | 「Windows フォーム アプリ (.NET Framework)」と「Windows フォーム アプリ」(.NET) は別テンプレート。.NET 版のデザイナーは別プロセスで動くなど仕組みが異なるため、どちらで起きているかを把握しておく |
| 保存場所のパス | パスが非常に長い、OneDrive 同期フォルダの中にある、といった場合にファイル生成が不安定になることがある。C:\work のような短いパスで新規作成して再現するか試す |
| 生成されたファイル | Form1.cs / Form1.Designer.cs / Form1.resx がそろっているか。Designer.cs が空や途中で切れていればテンプレート処理の失敗 |
| 出力ウィンドウ | 「表示 → 出力」で、エラー発生時に詳しいメッセージが出ていないか |
| Visual Studio のバージョン | 「ヘルプ → Microsoft Visual Studio のバージョン情報」。更新で直る不具合もあるため、問い合わせや検索の際に必要 |
解消できたかの確認方法
- Visual Studio 起動後、新しい Windows フォーム プロジェクトを作成してエラーが出ないか確認する
- デザイナーでフォームにボタンを 1 つ置き、ビルド(Ctrl+Shift+B)と実行(F5)ができることを確かめる
- 既存のプロジェクトでも、フォームの追加・デザイナーの表示ができるか確認する
バージョン情報
本記事の現象と「再起動で解消」を確認した環境:
Microsoft Visual Studio Community 2019
Version 16.11.3
関連
- Visual Studio「ドキュメントが読み込まれなかったため、デザイナーを表示できません」原因と対処
- Visual Studio エラー一覧
- .suo ファイルとは|Visual Studio のユーザー固有設定と .gitignore
- Visual Studio フォームのタブ順序変更完全ガイド
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページはありません
- 【Visual Studio】Form自動生成時に「値が有効な範囲にありません」エラー
- トップレベルのコントロールをコントロールに追加できません。
- 指定された名前のソリューションファイルが既に存在するため、ソリューション名を変更できません
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 7 Spring Frameworkのアノテーション一覧
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- クラウドネットワークの記事一覧 2026-10-02 16:08:51
- ルーティングとスイッチング完全ガイド — 静的/動的ルーティング/RIP/OSPF/BGP/VLAN/STP 2026-10-02 16:08:51
- ネットワークのアドレッシング完全ガイド — IP/MAC/ポート/サブネット/CIDR/IPv6/NAT 2026-10-02 16:08:51
- 本番環境のdll内で参照しているdllファイルの置き場所 2026-10-02 16:08:50
- 【Visual Studio】 C#のForm自動生成時に「値が有効な範囲にありません」エラー 2026-10-02 16:08:50
- 【Laravelエラー】does not comply with psr-4 autoloading standard. Skipping. 2026-10-02 16:08:50
- 【Laravelエラー】could not find driver(Windows, MySQL編) 2026-10-02 16:08:49
- The following channel memory did not pass cpu memory test. 2026-10-02 16:08:49
- 【pycharm】connecting to console が終わらない 2026-10-02 16:08:49
- 【DB2】テーブル定義からDDL(CREATE TABLE)を生成する方法 2026-10-02 16:08:49
- 【DB2】特定スキーマの全テーブルの全カラム情報を取得する方法 2026-10-02 16:08:48
- 【Vue.jsエラー】Error in created hook: "ReferenceError: axios is 2026-10-02 16:08:48
- 【Spring】@Dataとは 2026-10-02 16:08:48
- 【Xcodeエラー 】...のiPhone is busy: Preparing debugger support 2026-10-02 16:08:47
- 【Xcode/iPhoneアプリ】テンプレートの種類一覧 2026-10-02 16:08:47
コメントを削除してもよろしいでしょうか?