无法禁用itemtemplate中的文本块文本

时间:2016-12-08 02:33:22

标签: wpf xaml

<ListBox.ItemTemplate> 
 <DataTemplate>
  <StackPanel Orientation="Horizontal" >
    <StackPanel Orientation="Horizontal" Width="150" >
    <TextBlock MaxWidth="125" Name="name" Text="{Binding name}"      VerticalAlignment="Center" TextTrimming="CharacterEllipsis" Margin="0,4,4,4" />
   </StackPanel>
   <Button Command="{buttontext}" Visibility="{Binding IsAvailable, Converter={uil:BoolToVisibilityConverter}}">
 </StackPanel>
 </DataTemplate> 
 </ListBox.ItemTemplate>
  <ListBox.ItemContainerStyle>
     <Style TargetType="ListBoxItem">    
      <Setter Property="IsEnabled" Value="{Binding Isenable}"/>
     </Style>
  </ListBox.ItemContainerStyle>

我无法禁用文本(灰色显示),但按钮工作正常。 有谁知道如何解决这个问题?

嗨克里斯,我已经提到了这个链接。我尝试使用

<ListBox>
  <ListBox.ItemContainerStyle>
    <Style TargetType="{x:Type ListBoxItem}">
      <Style.Triggers>
        <DataTrigger Binding="{Binding name}" Value="False">
          <Setter Property="IsEnabled" Value="False"/>
        </DataTrigger>
      </Style.Triggers>
    </Style>
  </ListBox.ItemContainerStyle>
</ListBox>

但它仍然无效。对此有什么想法?

1 个答案:

答案 0 :(得分:0)

TextBlock不支持IsEnabled。最简单的解决方法是将TextBlock更改为Label