ユーザー コントロールと同じ名前のフォームのフォーム デザイナーを見ると、ユーザー コントロールがツールボックスに表示されません。実際にはツールボックスに表示されていますが、ツールボックスで「すべて表示」をオンにするとグレー表示されます。フォームとユーザーコントロールは同じ名前ですが、名前空間が異なります。
競合とは何か、またはこれは Visual Studio 2010 のバグですか?
再現するには (C#):
- 新しい Winforms プロジェクトを作成する
- プロジェクト内に「Forms」というフォルダーを作成します
- プロジェクト内に「UserControls」というフォルダーを作成します
- 「UserControls」の下に、次の新しい UserControls「AppleDetail」および「OrangeDetail」を追加します。
- 「フォーム」の下に、次の新しいフォーム「Test」および「OrangeDetail」を追加します。
- プロジェクトをビルドする
- 「テスト」のフォーム デザイナーを開くと、両方のユーザー コントロールがツールボックスに表示されます。
- 「OrangeDetail」のフォーム デザイナーを開くと、「AppleDetail」ユーザー コントロールのみがツールボックスで表示/有効化されます。