MultiDataTrigger是多条件数据触发器
和MltiTrigger是同样的,只不过前者是数据,后者是属性。
这个是基本的使用语法
<MultiDataTrigger> <MultiDataTrigger.conditions> //触发条件 </MultiDataTrigger.conditions> //这个位置写你想要的效果,动画等等 </MultiDataTrigger>
那现在给一个小小的例子,有一个输入框,有一个按钮,按钮是不可以使用的,当在输入框中输入未选择时,按钮可用,并显示输入框中的字符。
<Grid> <Button Height="50" Width="100" Margin="224,169,468,200"> <Button.Style> <Style TargetType="Button"> <Setter Property="Content" Value=""/> <Setter Property="Background" Value="Red"/> <Setter Property="IsEnabled" Value="False"/> <Style.Triggers> <MultiDataTrigger> <MultiDataTrigger.Conditions> <Condition Binding="{Binding ElementName=TB, Path=Text}" Value="未选择"/> <Condition Binding="{Binding ElementName=TB, Path=IsReadOnly}" Value="false"/> </MultiDataTrigger.Conditions> <MultiDataTrigger.Setters> <Setter Property="Content" Value="{Binding ElementName=TB, Path=Text}"/> <Setter Property="IsEnabled" Value="True"/> </MultiDataTrigger.Setters> </MultiDataTrigger> </Style.Triggers> </Style> </Button.Style> </Button> <TextBox x:Name="TB" IsReadOnly="False" HorizontalAlignment="Left" Height="45" Margin="224,96,0,0" TextWrapping="Wrap" Text="TextBox" VerticalAlignment="Top" Width="301"/> </Grid>
多条件数据触发器有很多的有意思的用法。
没事可以试试的