日期:2014-05-18  浏览次数:20672 次

请问在WPF中有办法在xaml文件中进行判断吗?
请问,如果一个按钮是动态即根据一个变量的值从而决定此按钮是否出现在页面上,请问如果要实现此需求,光通过XAML文件是否能够实现?还是说一定要在cs文件中通过代码动态创建按钮呢?先谢谢各位了

------解决方案--------------------
如果变量的值是通过ViewModel的属性来绑定的,比如根据State属性来设置Button的状态,那么可以这么写:

HTML code

 <Button Content="按钮">
      <Button.Style>
        <Style TargetType="Button">
          <Setter Property="Visibility" Value="Visible"/>
          <Style.Triggers>
            <DataTrigger  Binding="{Binding State}" Value="A">
              <Setter Property="Visibility" Value="Collapsed"/>
            </DataTrigger>
            <DataTrigger Binding="{Binding State}" Value="B">
              <Setter Property="Visibility" Value="Hidden"/>
            </DataTrigger>
          </Style.Triggers>
        </Style>
      </Button.Style>
    </Button>