2010-11-04 7 views
0

Cela fonctionne (place le bouton dans la zone de débordement):WPF bug barre d'outils: ToolBar.Overflowmode ne fonctionne pas dans les scénarios de liaison

<ToolBar> 
     <Button ToolBar.OverflowMode="Always">Hit me</Button> 
    </ToolBar> 

Cela ne veut pas (ne place/garde pas le bouton dans la zone de débordement):

<ToolBar Grid.Row="3" ItemsSource="{Binding Path=Groups[0].Items}"></ToolBar> 

    <DataTemplate DataType="{x:Type local:ItemViewModel}"> 
     <Button ToolBar.OverflowMode="Always">Hit me</Button> 
    </DataTemplate> 

Est-ce que quelqu'un sait s'il existe une solution de contournement pour ce problème?

Répondre

0

J'ai trouvé un moyen d'appliquer un débordement à tous les éléments, et en utilisant un sélecteur de style personnalisé, vous pouvez probablement adapter le débordement pour ne faire référence qu'aux éléments pertinents pour vous.

Version statique:

<Style x:Key="itemContainerStyle"> 
     <Style.Triggers> 
      <DataTrigger Binding="{Binding Path=Description}" Value="Foo"> 
       <Setter Property="ToolBar.OverflowMode" Value="Always"></Setter> 
      </DataTrigger> 
     </Style.Triggers> 
    </Style> 

    <Style TargetType="ToolBar"> 
     <Setter Property="ItemContainerStyle" Value="{StaticResource itemContainerStyle}"></Setter> 
    </Style>