2012-05-07 16 views
5

私はMahApps.Metroを使ってアプリケーションでMetro UIを実現しています。スタイルはWPFで上書きされます

私はリストビューを持っており、MahApps.Metroはスタイルを変更しています。リストビューのMahAppsスタイルはhereです。スタイルの

ロード:

<Window.Resources> 
    <ResourceDictionary> 
     <ResourceDictionary.MergedDictionaries> 
      <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Colours.xaml" /> 
      <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Fonts.xaml" /> 
      <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.xaml" /> 
      <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.AnimatedSingleRowTabControl.xaml" /> 
      <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Accents/Blue.xaml" /> 
      <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Accents/BaseLight.xaml" /> 
      <ResourceDictionary Source="pack://application:,,,/FineRSS;component/Resources/Icons.xaml" /> 
     </ResourceDictionary.MergedDictionaries> 
    </ResourceDictionary> 
</Window.Resources> 

は、私は次のアプローチを使用していますので、選択しlistviewitemsを追跡する必要があります。

<ListView.ItemContainerStyle> 
       <Style TargetType="{x:Type ListViewItem}"> 
        <Setter Property="IsSelected" Value="{Binding Mode=TwoWay, Path=IsSelected}"/> 
       </Style> 
</ListView.ItemContainerStyle> 

しかしMahApps.Metroのスタイルは、リストビューのデフォルトに上書きされます。

スタイルとIsSelectedバインディングを維持するにはどうしたらよいですか?

答えて

10

私はあなたがしたいことに従っていますが、あなたのStyleをロードするデフォルトのBasedOnにするのは意味がありますか? VSが行BASEDON = "{StaticResource {X:タイプのListViewItemを}}" 好きではないが、

<ListView.ItemContainerStyle> 
    <Style TargetType="{x:Type ListViewItem}" 
      BasedOn="{StaticResource {x:Type ListViewItem}}"> 
     <Setter Property="IsSelected" Value="{Binding Mode=TwoWay, Path=IsSelected}"/> 
    </Style> 
</ListView.ItemContainerStyle> 
+0

よう

何かはそれが動作しているようです。ありがとうございました。 – ieaglle

+0

同じ質問があります。 XAMLの使用にはまだ慣れています。 – cubski

関連する問題