0

おはよう、

私はVBプロジェクトで作業しています(通常、私は主にC#で作業しています)が、コンパイル時に理解できない問題があります:

私の VB プロジェクトには、Windows フォーム (独自の Designer.vb と .resx を含む) とリソース ファイル (Designer.vb を含む) があり、どちらも同じ名前で、次のコンパイル エラーが発生するようです。

エラー 13 アイテム「obj\Debug[projectName].[fileName].resources」が「Resources」パラメーターで複数回指定されました。"Resources" パラメーターでは、アイテムの重複はサポートされていません。

内部設計パターンであるため、そのうちの 1 つの名前を変更することはできません (C# プロジェクトで機能します)。

VB はそのようなパターンを受け入れませんか? はいの場合、可能な回避策はありますか? または、プロジェクト ファイルの 1 つに何か問題がありますか?

よろしく

編集:私の問題はあまり明確ではないかもしれないので、このプロジェクトで尊重しなければならないパターンは次のとおりです:

ここに画像の説明を入力
これはコンパイルされません。C#プロジェクトでこのパターンを問題なく使用しているため、VBのみです。

4

2 に答える 2

1

form.designer 内にエントリが重複している可能性があります。私は一度この問題に遭遇しました

ソリューション エクスプローラーに移動し、プロジェクトを選択して、ソリューション エクスプローラーの上部にある [すべてのファイルを表示] アイコンをクリックします。次に、form.vb を展開して、すべてのサブ ファイルを表示できるようにする必要があります。frmMain.Designer.vb を探し、リソース エントリが重複していないか確認します。それでもうまくいかない場合は、ソリューションをクリーニングしてみてください

ここから抽出されたリンクを確認してください。

VB.net デザイナー エラー

編集:フォームを削除します。コードビハインドを保存し、コードを貼り付けて別の名前で作成します。

于 2012-11-14T17:35:12.743 に答える
1

最後に、問題の場所を見つけました。
名前空間の問題でした。VisualStudio で生成された VB は WinForms でデフォルトで名前空間を提供しないため、フォームとフォームのデザイナーに名前空間を与え、別の名前空間を与えました。名前空間を2番目のresxに(プロパティ/カスタムツール名前空間を介して)コンパイルします。

于 2012-11-15T15:27:33.527 に答える