none
共有プロジェクトにあるWindowフォームに対して出る警告「ファイル 'xxx.Designer.vb' の親ファイル 'xxx.vb' がプロジェクト ファイルに見つかりません。」の対処方法 RRS feed

  • 質問

  • よろしくお願いします。

    環境:

    windows10

    visual studio 2019

    質問事項:

    ソリューションに

      プロジェクトA、

      プロジェクトB、

      共有プロジェクトS

    があり、プロジェクトA、プロジェクトBで共通で使用したいフォームxxx.vbを入れた状態で、

      警告「ファイル 'xxx.Designer.vb' の親ファイル 'xxx.vb' がプロジェクト ファイルに見つかりません。」

    が表示されます。(ビルドには成功する)

    この警告が表示されないようにするにはどのようにすればよいでしょうか。

    経緯:

    プロジェクトAでビルドができる状態のソースができたのですが、その後よく似たプロジェクトBを作ることになりました。

    共通部分が多く、同時に開発するので、同じソリューション内でプロジェクトBを追加し、共通な部分は共用することになりました。

    ソースの共用としては既存項目-リンクとして作成が一般的と考えましたが、共有プロジェクトなる機能があることがわかり、実際に共有プロジェクトSを追加し、共通な部分を移動させてもプロジェクトA,プロジェクトBともにきちんとビルドができました。

    しかし、共有プロジェクトに移動させたWindowsフォームについて、次の問題点がでてきました。

    ・前述の警告「親ファイルが見つかりません」がでること

    ・デザイナーで表示ができないこと(コードの表示はできて、編集もできる)

    おそらくデザイナーで表示ができないのは、警告にある親ファイルとの関係が見つけられないためだとおもうのですが、どのようにすれば警告が表示されないようにできるか教えてください。

    よろしくお願いします。


    2020年11月12日 9:04

回答

  • プロジェクトファイル(*.vbproj) をエディタで開き、以下のように DependentUpon で Designer.vb とコード側のVBファイルが関連付けられているか、確認してみてください。もし関連付けられていなければ、 手動で編集するといいでしょう。

        <Compile Include="xxxx.Designer.vb">
          <DependentUpon>xxxx.vb</DependentUpon>
        </Compile>


    本フォーラムは、ユーザー(開発者)同士で情報交換を行うためのコミュニティです。初めて利用される方は フォーラムでご質問頂くにあたっての注意点 をご覧ください。

    2020年11月13日 4:19
    モデレータ

すべての返信

  • プロジェクトファイル(*.vbproj) をエディタで開き、以下のように DependentUpon で Designer.vb とコード側のVBファイルが関連付けられているか、確認してみてください。もし関連付けられていなければ、 手動で編集するといいでしょう。

        <Compile Include="xxxx.Designer.vb">
          <DependentUpon>xxxx.vb</DependentUpon>
        </Compile>


    本フォーラムは、ユーザー(開発者)同士で情報交換を行うためのコミュニティです。初めて利用される方は フォーラムでご質問頂くにあたっての注意点 をご覧ください。

    2020年11月13日 4:19
    モデレータ
  • 回答、ありがとうございます。

    関連付けに異常があったようです。(該当コードは事情によりすでに変更されていたので、テストコードで確認してみたら、問題がありませんでした。)

    ありがとうございました。



    2020年11月13日 9:08