2016-08-18 31 views
0

私はListBoxを持っています。その中でItemTemplateは1つを持っていますと1つの削除Buttonです。WPFでDataTriggerを使用しているListBoxのアイテムを非表示にするCountBoxに基づくリストボックス

私の要件ObservableCollection<string> Personにレコードが1つしかない場合は、削除Buttonを非表示にする必要があります。複数のレコードがある場合は、すべてのアイテムに対して削除Buttonを表示する必要があります。

XAML:

<ListBox ItemsSource="{Binding Person, UpdateSourceTrigger=PropertyChanged}" Background="Transparent" Margin="0 10" HorizontalContentAlignment="Stretch"> 
    <ListBox.ItemTemplate> 
     <DataTemplate> 
      <Grid HorizontalAlignment="Stretch"> 
        <Grid.RowDefinitions> 
         <RowDefinition Height="Auto"/> 
         <RowDefinition Height="Auto"/> 
        </Grid.RowDefinitions> 
        <TextBox Grid.Row="0" Text="{Binding Contact, UpdateSourceTrigger=PropertyChanged}" /> 
        <Button Grid.Row="1" Content="X" Foreground="Red" /> 
      </Grid> 
     </DataTemplate> 
    </ListBox.ItemTemplate> 
    <ListBox.Style> 
     <Style TargetType="{x:Type ListBox}"> 
      <Style.Triggers> 
       <DataTrigger Binding="{Binding Path=Items.Count, RelativeSource={RelativeSource Self}}" Value="1"> 
        <Setter Property="Visibility" Value="Collapsed" /> 
       </DataTrigger> 
      </Style.Triggers> 
     </Style> 
    </ListBox.Style> 
</ListBox> 

DataTrigger:

<ListBox.Style> 
     <Style TargetType="{x:Type ListBox}"> 
      <Style.Triggers> 
       <DataTrigger Binding="{Binding Path=Items.Count, RelativeSource={RelativeSource Self}}" Value="1"> 
        <Setter Property="Visibility" Value="Collapsed" /> 
       </DataTrigger> 
      </Style.Triggers> 
     </Style> 
    </ListBox.Style> 

親切にどのように私の要件のためにDataTriggerを設定するために私を助けます。

答えて

0

DataTriggerは、ボタンのスタイルで次のようになります。

<Button ...> 
    <Button.Style> 
     <Style TargetType="Button"> 
      <Style.Triggers> 
       <DataTrigger Binding="{Binding Items.Count, 
           RelativeSource={RelativeSource AncestorType=ListBox}}" 
          Value="1"> 
        <Setter Property="Visibility" Value="Collapsed"/> 
       </DataTrigger> 
      </Style.Triggers> 
     </Style> 
    </Button.Style> 
</Button> 
関連する問題