1

有人可以提供一个简单的示例,您如何在 ItemsControl 上使用 DataTriggers?

例如,如果我这样说:

<ItemsControl.Triggers>
   <DataTrigger Binding="{Binding Items.Count}" Value="2">
       <Setter TargetName="DocHost" Property="UniformGrid.Rows" Value="2"/>
    </DataTrigger>
</ItemsControl.Triggers>

它给了我一个错误,说 ItemsControl 需要一个事件触发器。可悲的是,我必须在里面使用 DataTriggers 和 ItemsControl。我怎样才能做到这一点?

4

1 回答 1

3

您不能DataTrigger在 a 中使用 a TriggerCollection...是的,是的,我知道...这太疯狂了。但是,您可以将一个放在TriggerCollectiona 中Style

<ItemsControl.Style>
    <Style>
        <Style.Triggers>
            <DataTrigger Binding="{Binding Items.Count}" Value="2">
                <Setter TargetName="DocHost" Property="UniformGrid.Rows" Value="2"/>
            </DataTrigger>
        </Style.Triggers>
    </Style>
</ItemsControl.Style>

更新>>>

抱歉,我没TargetName在里面看到。答案是将其DataTrigger移入UnifrmGrid.Style并删除该TargetName属性,但是您可能会Binding对该属性产生一些麻烦Items...如果您还有其他问题,请告诉我。

于 2013-10-22T12:33:01.310 回答