2014-11-02 3 views
0

У меня есть каталог содержимого в главном решении. В каталоге контента у меня есть два каталога: ViewModels и просмотровПуть к имён в WPF XAML

В XAML, я заявил:

xmlns:vm ="clr-namespace:AppName.Content" 

сейчас, я хочу получить ссылку на какой-то класс в каталоге ViewModel:

<DataTemplate DataType="{x:Type vm:LaserPathViewModel}"> 

Я знаю, что это неправильно, потому что пространство имен LaserPathViewModel - это AppName.Content.ViewModels.

Но как получить эту ссылку без добавления следующей одной декларации пространства имен?

ответ

0

У вас нет. Вы должны объявить это другое пространство имен. Один из способов сделать это путем добавления другого объявления пространства имен:

xmlns:vm2 ="clr-namespace:AppName.Content.ViewModel" 

И тогда вы можете использовать его как это:

<DataTemplate DataType="{x:Type vm2:LaserPathViewModel}"> 

Но есть еще один способ объявить пространство имен. Вы можете использовать команду XmlnsAttribute, которая позволяет сопоставлять несколько пространств имен .NET в одном пространстве имен X (A) ML. Вы можете найти приятное объяснение here.

Смежные вопросы