2016-10-16 2 views
2

Поскольку я загружаю динамический контент в StackPanel Я хотел бы добавить ContextMenu на каждый объект.Добавить программное меню MahApps.Metro программно

Сейчас я делаю это с System.Windows.Controls.ContextMenu и он работает.

К сожалению, меню выглядит в старой форме окна, а не как приятное меню MahApps.

На странице Интернета можно найти документацию по добавлению меню в xaml, но не как создать меню через код.

Есть ли у вас идеи?

Спасибо за вашу помощь :)

ответ

1

Глядя в MahApps.Metro я обнаружил, что ContextMenu-х Style имеет ключ MetroContextMenu.

Таким образом, вы можете создать свой обычный ContextMenu в CodeBehind. Можно добавить следующее Style к вашему App.xaml

<Application.Resources> 
    <ResourceDictionary> 
     <ResourceDictionary.MergedDictionaries> 
      <!-- MahApps.Metro resource dictionaries. Make sure that all file names are Case Sensitive! --> 
      <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.xaml" /> 
      <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.ContextMenu.xaml" /> 
      <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Fonts.xaml" /> 
      <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Colors.xaml" /> 
      <!-- Accent and AppTheme setting --> 
      <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Accents/Green.xaml" /> 
      <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Accents/BaseLight.xaml" /> 
     </ResourceDictionary.MergedDictionaries> 
    </ResourceDictionary> 
    <!-- Apply MetroStyle for ContextMenu to ContextMenus in Application scope --> 
    <Style TargetType="ContextMenu" BasedOn="{StaticResource MetroContextMenu}" /> 
</Application.Resources> 

Это только вы должны обратиться к вашему ContextMenu. Нет специального управления ContextMenu, предоставляемого MahApps (это только Style!).

+0

Большое спасибо ... это сработало так :) – Cluster2a

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