2011-07-23 12 views
6

Bueno, yo supongo que es fácil mi escenario es tener 2 elementos: ListBox y botón:WPF unión al elemento de

<ListBox Name="BannedItemsListBox" 
     Margin="5" 
     MinWidth="100" 
     MaxWidth="100" " Height=" 
     204" ItemsSource="{Binding Path=BannedItems, Mode=TwoWay}"></ListBox> 
<Button Name="RemoveBannedItemsButton" 
     Margin="5" 
     MinWidth="65" 
     Height="22" 
     Click="RemoveBannedItemButton_Click">Remove</Button> 

Quiero unir el botón IsEnabled propiedad para ser verdad solamente si el artículo de se selecciona ListBox (centrado) en XAML

probé

IsEnabled="{Binding ElementName=BannedSourcesListBox, Path=TouchesDirectlyOver.Count}" 

pero no ir.

Respuesta

5

¿Qué hace la selección tiene que ver con los toques? (También el ElementName está apagado)

me gustaría probar esto:

IsEnabled="{Binding SelectedItems.Count, ElementName=BannedItemsListBox}" 

Editar: Al parecer, a diferencia del gatillo variante, la gente no parece para ver cómo funciona esto: Básicamente los intentos sistema de encuadernación para convertir la entrada a la propiedad en cuestión, un valor booleano, de modo que cuando se obtenga un número entero, 0 será convertidor a false, cualquier valor superior a true. Entonces, el botón se habilitará si se seleccionan uno o más elementos.

3
<Button Content="Button" 
     Height="23" 
     HorizontalAlignment="Left" 
     Margin="138,12,0,0" 
     Name="button1" 
     VerticalAlignment="Top" 
     Width="75" 
     Click="button1_Click"> 
    <Button.Style> 
     <Style> 
      <Setter Property="Button.IsEnabled" 
        Value="True" /> 
      <Style.Triggers> 
       <DataTrigger Binding="{Binding ElementName=lstTest , Path=SelectedItem}" 
          Value="{x:Null}"> 
        <Setter Property="Button.IsEnabled" 
          Value="False" /> 
       </DataTrigger> 
      </Style.Triggers> 
     </Style> 
    </Button.Style> 
</Button> 
+0

Esa lógica se invierte, solo se habilitará si no se selecciona nada. (También es un poco indirecto) –

+0

@ H.B. Gracias lo arregló – sternr

Cuestiones relacionadas