For the life of me I cannot get a restyled PaneSplitter to display in a XamDockManager. I am using IG 2010.2. I've created this simple lovely window to demonstrate. It just begs for Green splitters, but they are transparent. Am I missing something?
Note the ContentPane style works, but the PaneSplitter style does not.
<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:igDock="http://infragistics.com/DockManager" x:Class="WpfApplication2.MainWindow" x:Name="Window" Title="MainWindow" UseLayoutRounding="True" Width="640" Height="480">
<Grid x:Name="LayoutRoot"> <igDock:XamDockManager Padding="10" Margin="10" Background="#FF0060FF"> <igDock:XamDockManager.Resources> <Style TargetType="{x:Type igDock:PaneSplitter}"> <Setter Property="Background" Value="Green"/> </Style> <Style TargetType="{x:Type igDock:ContentPane}"> <Setter Property="Background" Value="Pink"/> </Style> </igDock:XamDockManager.Resources> <igDock:XamDockManager.Panes> <igDock:SplitPane> <igDock:ContentPane Header="This is Pane 1"/> <igDock:ContentPane Background="Orange" Header="This is Pane 2"/> </igDock:SplitPane> </igDock:XamDockManager.Panes> <igDock:SplitPane SplitterOrientation="Horizontal"> <igDock:ContentPane Background="Purple" Header="This is Pane 3"/> <igDock:ContentPane Background="Teal" Header="This is Pane 4"/> </igDock:SplitPane> </igDock:XamDockManager> </Grid></Window>
In WPF, the local style is always based on the class type. PaneSplitter is the base class so WPF will never use that as the implicit style. You would have to create a style to target the type of splitter you are trying to change (e.g. SplitPaneSplitter, DockedPaneSplitter and/or UnpinnedTabFlyoutSplitter.
Thanks, Andrew.
I was working in Blend and it does not cooperate with making styles for those classes. For some reason Blend recognizes UnpinnedTabFlyoutSplitter, but not the other two. I put them in using VS2010 and they are working fine.
Thanks!