VB.NET WPF アプリケーションで動作する VS2012 を使用します。WPF を学習するために使用している簡単な MusicPlayer チュートリアル アプリがあります。チュートリアルの C# バージョンを VB.NET に段階的に変換しています。
アプリには、同じ名前空間にある 2 つのクラスがあります。XAML で名前空間を参照できますが、XAML でクラス オブジェクトを参照しようとするとエラーが発生し、コンパイルできません。
奇妙なことに、IntelliSense は xmlns:c= タグを介して名前空間を参照する場合と、 を使用してクラス オブジェクトを入力する場合の両方で正常に動作します <c:
が、オブジェクトに下線が引かれ、デザイナーでビルドまたは作業しようとするとエラーが生成されます。
.vb クラス ファイルは、\Controls というフォルダーにあります。メイン プロジェクトのルート名前空間は、意図的に空白のままにしています。クラスは次のようにコーディングされています...
Namespace MusicPlayer.Controls
Public Class UpdatingMediaElement
.... code here
End Public
End Namespace
xamlは次のようになります
<Window >
(タグで定義された名前空間
xmlns:c="clr-namespace:MusicPlayer.Controls"
( で定義されたオブジェクト<Grid>
)
<c:UpdatingMediaElement Name="MyMediaElement" />
(エラー表示) 名前空間「clr-namespace:MusicPlayer.Controls」に名前「UpdatingMediaElement」が存在しません。
何が問題なのか、それを修正する方法がわからないのですか?