Eu tenho uma ListBox que é carregado dinamicamente usando EF. Um dos filtros utilizados é que o produto exista no estoque.
var query = (from p in db.Products
join s in db.Stocks
on new { p.SchoolID, p.ProductID }
equals new { s.SchoolID, s.ProductID }
where
s.Quantity > 0 &&
p.Active == true &&
p.SchoolID == _idSchool &&
p.ProductTypeID == 1
select p);
lst.ItemsSource = query;
Cód XAML do meu ListBox...
<ListBox.ItemTemplate>
<DataTemplate>
<Grid>
<Border>
<StackPanel Margin="1">
<StackPanel.Background>
<ImageBrush ImageSource="images/btnSalgados.png"/>
</StackPanel.Background>
<TextBlock Margin="0,0,0,0" Padding="4" Width="167" Height="52" TextWrapping="Wrap" Text="{Binding Name}" ToolTip="{Binding Name}"
TextAlignment="Center" HorizontalAlignment="Center" VerticalAlignment="Center" FontSize="22" Foreground="White" />
<TextBlock Margin="0,0,0,0" Padding="4" Width="167" Height="40" TextWrapping="Wrap" Text="{Binding Price, StringFormat=\{0:N\}}"
TextAlignment="Center" HorizontalAlignment="Center" VerticalAlignment="Center" FontSize="22" Foreground="White"/>
</StackPanel>
</Border>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
A imagem de como aparece o ListBox para o usuário...

Eu preciso que se o usuário selecionar um produto que só tem 1 no estoque (pois ao seleciona-ló o estoque do mesmo ficará zerado) esse item seja inabilitado para futuras seleções (para que ele não selecione um produto que não tenha em estoque).