Правильно ли поместить модель представления в ресурсный словарь? - PullRequest
1 голос
/ 30 января 2012

Я разрабатываю проект WPF, и обычно я использую Resourcedictionary для организации стилей и цветов. При использовании Expression Blend он поместит объект viewmodel в ресурс, подобный этому:

<local:VM x:Key="VM" d:IsDataSource="True"/>

и установите текст данных следующим образом

<Window.DataContext><Binding Mode="OneWay" Source="{StaticResource VM}"/></Window.DataContext>

Это очень полезно для получения команды или свойства в XAML, используя свойство source в привязке, как это (особенно в datatemplate)

{Binding XXCommand,Source={StaticResource VM}}

Могу ли я поместить объект viewmodel в resourcedictionary или лучше поместить это представление отдельно для каждого представления, связанного с моделью представления?

Кроме того, если я добавлю приведенный ниже стиль в resourcedictionary, я должен включить объект viewmodel,

<Style x:Key="MenuItemStyle" TargetType="MenuItem">
    <Setter Property="Header" Value="{Binding Desc}"/>
    <Setter Property="Icon" Value="{StaticResource IconImage}" />
    <Setter Property="Command" Value="{Binding ChangeShowCommand,Source={StaticResource VM}}"/>
    <Setter Property="CommandParameter" Value="{Binding}"/>
</Style>

1 Ответ

0 голосов
/ 30 января 2012

Это может быть ответом: Подходы к созданию MVVM . Хорошо объясненная пара подходов к реализации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...