VisualStudioのバグを私に:「XY」は、名前空間に存在しない「CLR名前空間:AB」これら2 errormessagesと
名「SeverityToColorConverterは、」名前空間「CLR名前空間には存在しません:MYNAMESPACE "
と
名 "ReadOnlyTextBoxLineExtendedUnitは" 名前空間に存在しない "CLR名前空間:MYNAMESPACE"。
私は自分のアプリケーションのトップレベルにStyles.xamlを持っています。それはこのようになります最小限に簡素化された
:
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:MYNAMESPACE">
<local:SeverityToColorConverter x:Key="SeverityToColorConverter" />
<local:SeverityToImageSourceConverter x:Key="SeverityToImageSourceConverter" />
<Style TargetType="local:ReadOnlyTextBoxLineExtendedUnit" BasedOn="{StaticResource ErrProvErrorTemplateStyle}" />
<Style TargetType="local:TextBoxLine" BasedOn="{StaticResource ErrProvErrorTemplateStyle}" />
</ResourceDictionary>
の両方が、ReadOnlyTextBoxLineExtendedUnit
とTextBoxLine
はまったく同じディレクトリにあります。 .xaml.vbコードには名前空間が指定されていません。しかし、VSはこれらの2つの後者しか見つけられないようだ。どのようにこれを可能にすることができますか? コンバータについても同じことが言えます。いくつかは認識され、同じではありません。 ここで非常に重要なことは、オブジェクトブラウザがこれらのオブジェクトをすべて検出することです。
多分私は、MSからの互換性ツールを使用してゆっくりとWPFに変換したWinForms Appを持っていたことに言及することが重要です。今度は完全にWPF基本アプリケーションに変更し、いくつかの残りのWinFormsをホストします。この作業を行うために、私は手動で新しいアプリケーションにすべてのファイルを手作業で再インポートしました(おそらくもっと良い解決策があるでしょう...)。 私は自分のコードが動作することを確かに知っています。それはいくつかのVSのクラップス...または私は理解していない新しいWPFホストのいくつかの問題でなければならない...
はい私はx86/x64に切り替えるの汚いトリックを試みた。それはいくつかの問題を解決しましたが、それらは残っています。
ベストウイッシュ Yatekii
名前空間のないクラスがあると、何か問題があります。 –
それはどういう意味ですか?私が新しいコンポーネントを作成した場合、.xaml.vbには 'mycomponent end class'クラスだけが含まれ、' namespace xy class mycomponent end class end namespace'は含まれません。また、重要な部分は、いくつかのコンポーネントで動作し、他のコンポーネントでは動作しないということです。 – Yatekii
一般に、私が知る限り、グローバル名前空間にクラスを宣言してはいけません。なぜあなたはあなたがいるディレクトリに基づいてデフォルトの名前空間を作成しないのか分かりません(または、おそらくVBで暗黙的ですか?それほどよく知られていません)。 –