2016-11-02 5 views
0

Мой вопрос вытекает вопрос: WPF Module toolbar prismWPF Панель с Prism

Можно ли использовать WPF Toolbar как Prism области? То, что я хочу сделать что-то вроде этого:

<DockPanel> 
    <ToolBarTray DockPanel.Dock="Top"> 
     <ToolBar prism:RegionManager.RegionName="MainNavigationRegion"> 

     </ToolBar> 
    </ToolBarTray> 
</DockPanel> 

В общем, что я хочу, это мои модули в состоянии заполнить кнопки на панели инструментов в навигационной области, но при этом сохранить свойства панели инструментов (коллапс, когда все кнопки не подходят).

+1

Да, это возможно. И решение уже существует: вам нужно создать настраиваемый региональный адаптер, точно так же, как описано в ответе, на который вы разместили ссылку. – dymanoid

+0

"protected override RegionAdapterMappings ConfigureRegionAdapterMappings()" метод - это метод из пользовательского класса MyToolbar? Извините, может быть, это очень глупый вопрос, но я очень новичок в Prism. И тогда класс MyToolbar наследуется от ToolBar? И DockPanel и ToolBarTray, которые содержат MyToolbar, определяются ли они в классе MyToolBar или в оболочке? – chincheta73

+0

Нет, это метод в вашем загрузочном блоке приложения PRISM. Вам не нужно писать собственную панель инструментов, но вам нужно создать класс, созданный «RegionAdapter», который может адаптировать регионы PRISM к элементам вашей панели инструментов. – dymanoid

ответ

0

В основном в PRISM каждый регион будет отдельным компонентом usercontrol/project, подразумевающим подключение и воспроизведение модулей. Вы можете сделать одну вещь: создать панель инструментов или панель ленты в одном пользовательском элементе управления и зарегистрировать этот вид в бутстрафере, как обычно, затем привязать соответствующий вид в Shell.xaml.