WPF XAML-如何将DataTrigger绑定到ComboBox值

WPF XAML-如何将DataTrigger绑定到ComboBox值,wpf,xaml,combobox,datatemplate,datatrigger,Wpf,Xaml,Combobox,Datatemplate,Datatrigger,我目前有一个ListView,它接收一个项目并显示一个组合框和一个按钮 我想根据组合框的值等于“BlahBlahBlah”来动态显示或隐藏按钮 当前,我的的内部如下所示: <GridViewColumn Header="Property" Width="160"> <GridViewColumn.CellTemplate> <DataTemplate> <ComboBox x:Name="PropertyComboBox

我目前有一个ListView,它接收一个项目并显示一个组合框和一个按钮

我想根据组合框的值等于“BlahBlahBlah”来动态显示或隐藏按钮

当前,我的
的内部如下所示:

<GridViewColumn Header="Property" Width="160">
  <GridViewColumn.CellTemplate>
      <DataTemplate>
         <ComboBox x:Name="PropertyComboBox"
                  ItemsSource="{Binding Path=ArisingPropertyList, Mode=TwoWay}"
                  SelectedValue="{Binding ArisingProperty.PropertyName,
                  UpdateSourceTrigger=PropertyChanged}"
                  SelectedValuePath="PropertyName" Width="140" >
          </ComboBox>
        </DataTemplate>
   </GridViewColumn.CellTemplate>
</GridViewColumn>                                         


<GridViewColumn Width="30" >                                    
  <GridViewColumn.CellTemplate>                                        
     <DataTemplate>
         <Button Content="...">
            <Button.Style>
               <Style TargetType="{x:Type Button}">
                 <Style.Triggers>
                   <DataTrigger Binding="{Binding Path=SelectedValue.PropertyName, 
                    ElementName=PropertyComboBox}" Value="HideButton">
                        <Setter Property="Visibility" Value="BlahBlahBlah" />
                   </DataTrigger>
                 </Style.Triggers>
              </Style>
           </Button.Style>
        </Button>                                                
     </DataTemplate>
   </GridViewColumn.CellTemplate>
 </GridViewColumn>

您已经将
SelectedValue
属性绑定到源类,因此直接绑定到该属性而不是ComboBox。问题是ComboBox和Button位于不同的可视树中,所以不能使用ElementName绑定

<DataTrigger Binding="{Binding Path=ArisingProperty.PropertyName}"
             Value="HideButton">
   <Setter Property="Visibility" Value="Collapsed" />
</DataTrigger>

<DataTrigger Binding="{Binding Path=ArisingProperty.PropertyName}"
             Value="HideButton">
   <Setter Property="Visibility" Value="Collapsed" />
</DataTrigger>