wpf工具栏错误:ToolBar.Overflowmode在绑定方案中不起作用

时间:2010-11-04 12:50:43

标签: wpf toolbar

这样可行(将按钮放在溢出区域中):

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

这不会(不会将按钮放在溢出区域中):

    <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>

是否有人知道此问题是否有解决方法?

1 个答案:

答案 0 :(得分:0)

我找到了一种将溢出应用于所有项目的方法,并且使用自定义样式选择器,您可以定制溢出以仅引用与您相关的项目。

静态版本:

    <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>