2011-07-05 4 views
2

を宣言せずにXAMLでクラスの名前空間を指定します。私は、ユーザーコントロールしている場合、名前空間

xmlns:foobar="clr-namespace:Foo.Bar" 

、その後

<foobar:MyClass /> 

参照を使用して:Foo.Bar.MyClassを、私は宣言することにより、XAMLでそれを参照することができます知っていますしかし私がFoo名前空間だけを宣言すれば:

xmlns:foo="clr-namespace:Foo" 

は、MyClassFoo:Bar.MyClassとXAMLで参照する方法がありますか?

答えて

0

私の知る限り、これは不可能です。

XAMLで使用されている型のアセンブリ参照を追加する必要があります。

同様に、C#では不可能です。使用するリストに含まれていないアセンブリ参照にはアクセスできません。

+0

しかし、この例のように、私は実際にアセンブリ参照を宣言しています: 'foo'。そのトリックは、アクセスしたいすべてのレベルを宣言するのではなく、その名前空間にインデックスを付けることです。 –

+1

C#ではアセンブリを参照する必要がありますが、 'using'リストに含める必要はありません。 'System.Windows.Forms.MessageBox.Show(...)'のような完全な型名を使うことができます。 XAMLに似たようなことをすると非常に役に立ちます。 – Arek

関連する問題