I don't know if you still ned help on this or not but this is what I have so far on my office style combobox
<Style x:Key="{x:Type ComboBox}" TargetType="{x:Type ComboBox}">
<Setter Property="SnapsToDevicePixels" Value="true" />
<Setter Property="OverridesDefaultStyle" Value="true" />
<Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Auto" />
<Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto" />
<Setter Property="ScrollViewer.CanContentScroll" Value="true" />
<Setter Property="MinWidth" Value="120" />
<Setter Property="MinHeight" Value="20" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ComboBox}">
<Grid>
<ToggleButton x:Name="ToggleButton" Template="{StaticResource ComboBoxToggleButton}" Grid.Column="2" Focusable="false" ClickMode="Press" IsChecked="{Binding IsDropDownOpen, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}}" />
<ContentPresenter x:Name="ContentSite" IsHitTestVisible="False" Content="{TemplateBinding SelectionBoxItem}" ContentTemplate="{TemplateBinding SelectionBoxItemTemplate}" ContentTemplateSelector="{TemplateBinding ItemTemplateSelector}" Margin="3,3,23,3" VerticalAlignment="Center" HorizontalAlignment="Left" />
<TextBox x:Name="PART_EditableTextBox" Template="{StaticResource ComboBoxTextBox}" HorizontalAlignment="Left" VerticalAlignment="Bottom" Margin="3,3,23,3" Focusable="True" Background="Transparent" Visibility="Hidden" IsReadOnly="{TemplateBinding IsReadOnly}" />
<Popup x:Name="Popup" Placement="Bottom" IsOpen="{TemplateBinding IsDropDownOpen}" AllowsTransparency="True" Focusable="False">
<Border BorderThickness="1" BorderBrush="#FFA7ABB0" Background="White" CornerRadius="3">
<Grid x:Name="DropDown" SnapsToDevicePixels="True" MinWidth="{TemplateBinding ActualWidth}" MaxHeight="{TemplateBinding MaxDropDownHeight}">
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Border Grid.Row="0" x:Name="DropDownBorder" BorderThickness="0" Background="White" BorderBrush="#FFA7ABB0" />
<ScrollViewer Margin="2" SnapsToDevicePixels="True">
<StackPanel IsItemsHost="True" KeyboardNavigation.DirectionalNavigation="Contained" />
</ScrollViewer>
<StackPanel Grid.Row="1" >
<Border BorderThickness="1">
<StackPanel Orientation="Vertical">
<ribbon:Separator />
<ribbon:Menu>
<ribbon:Button Label="Add Printer" ToolTip="Add Printer" />
<ribbon:Button Label="Print to File" ToolTip="Print to File"/>
</ribbon:Menu>
</StackPanel>
</Border>
</StackPanel>
</Grid>
</Border>
</Popup>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="HasItems" Value="false">
<Setter TargetName="DropDownBorder" Property="MinHeight" Value="95" />
</Trigger>
<Trigger Property="IsGrouping" Value="true">
<Setter Property="ScrollViewer.CanContentScroll" Value="false" />
</Trigger>
<Trigger SourceName="Popup" Property="AllowsTransparency" Value="true">
<Setter TargetName="DropDownBorder" Property="CornerRadius" Value="3" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="{x:Type ComboBoxItem}" TargetType="{x:Type ComboBoxItem}">
<Setter Property="SnapsToDevicePixels" Value="true" />
<Setter Property="OverridesDefaultStyle" Value="true" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ComboBoxItem}">
<Border x:Name="Border" SnapsToDevicePixels="true" BorderThickness="0" Background="Transparent">
<ContentPresenter />
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<DataTemplate x:Key="PrinterNameItemTemplate">
<Grid>
<Border x:Name="border" BorderThickness="1" CornerRadius="3">
<Border.Style>
<Style>
<Style.Triggers>
<DataTrigger Binding="{Binding IsSelected, RelativeSource={RelativeSource AncestorType={x:Type ComboBoxItem}, Mode=FindAncestor}}" Value="True">
<Setter Property="Border.BorderBrush" Value="Transparent" />
<Setter Property="Border.Background" Value="Transparent" />
</DataTrigger>
</Style.Triggers>
</Style>
</Border.Style>
<Border x:Name="border2" BorderThickness="1" CornerRadius="3" >
<StackPanel x:Name="stackPanel" Orientation="Horizontal" Margin="0" VerticalAlignment="Top" UseLayoutRounding="False">
<StackPanel.ToolTip>
<ToolTip Width="210">
<StackPanel Orientation="Vertical">
<TextBlock FontWeight="SemiBold"><Run Text="Printer Status" /></TextBlock>
<TextBlock />
<StackPanel Orientation="Horizontal">
<TextBlock Margin="5,0,0,0" Text="Status: " />
<TextBlock Text="{Binding CurrentPrinterStatus}" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock Margin="5,0,0,0" Text="Type: " />
<TextBlock Text="{Binding CurrentPrinterName}" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock Margin="5,0,0,0" Text="Where: " />
<TextBlock Text="{Binding CurrentPrinterPort}" />
</StackPanel>
<TextBlock Margin="5,0,0,0" Text="Comment: " />
<TextBlock />
</StackPanel>
</ToolTip>
</StackPanel.ToolTip>
<Border SnapsToDevicePixels="true" x:Name="Bdr" BorderThickness="1" CornerRadius="3" Width="34" Height="34">
<Border.Style>
<Style>
<Style.Triggers>
<DataTrigger Binding="{Binding IsSelected, RelativeSource={RelativeSource AncestorType={x:Type ComboBoxItem}, Mode=FindAncestor}}" Value="True">
<Setter Property="Border.BorderBrush" Value="{DynamicResource CustomSelectedSolidBorderBrush}" />
<Setter Property="Border.Background" Value="{DynamicResource CustomSelectedSolidBackground}" />
</DataTrigger>
</Style.Triggers>
</Style>
</Border.Style>
<Image x:Name="img" Width="32" Height="32" Stretch="Fill" Source="{Binding Icon}" />
</Border>
<StackPanel x:Name="stackPanel1" Orientation="Vertical">
<TextBlock FontFamily="Segoe UI" FontSize="12.5" Text="{Binding CurrentPrinterName}" Margin="8,0,0,0" />
<TextBlock FontFamily="Segoe UI" FontSize="12.5" Margin="8,0,0,0" Foreground="{Binding CurrentColor}"><Run Text="{Binding CurrentPrinterStatus}"/></TextBlock>
</StackPanel>
</StackPanel>
</Border>
</Border>
</Grid>
<DataTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" TargetName="border" Value="{DynamicResource ToggleButtonMouseOverBackground}"/>
<Setter Property="BorderBrush" TargetName="border2" Value="White" />
<Setter Property="BorderBrush" TargetName="border" Value="{DynamicResource ToggleButtonMouseOverBorderBrush}"/>
</Trigger>
</DataTemplate.Triggers>
</DataTemplate>
Hope it helps you!