Voglio creare un ListBox semplice e selezionare SelectAll come voce del menu di scelta rapida. Tuttavia sembra che ListBox abbia una sorta di gestione integrata per SelectAll che non riesco a lavorare, ma interferisce con il mio tentativo di implementare SelectAll.WPF Listbox e Select All
mio intero XAML è questo:
<Window x:Class="WpfApplication1.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="300" Width="300">
<Window.CommandBindings>
<CommandBinding Command="ApplicationCommands.SelectAll"
Executed="SelectAllExecuted" />
</Window.CommandBindings>
<DockPanel>
<CheckBox DockPanel.Dock="Top">My Checkbox</CheckBox>
<ListBox Name="listBox" SelectionMode="Multiple">
<ListBox.ContextMenu>
<ContextMenu>
<MenuItem Command="ApplicationCommands.SelectAll" />
</ContextMenu>
</ListBox.ContextMenu>
</ListBox>
</DockPanel>
</Window>
SelectAllExecuted è semplicemente questo:
private void SelectAllExecuted(object sender, ExecutedRoutedEventArgs e)
{
listBox.SelectAll();
}
Ctrl + A funziona se la casella di riepilogo non è a fuoco. L'elemento del menu di scelta rapida funziona correttamente. Ma Control + A rifiuta di funzionare se la listbox è focalizzata.
Mi sento come se stessi combattendo contro la listbox, ma non avrei bisogno di farlo.
Modifica: Sembra che tutto il mio problema riguardi Multiple SelectionMode. Se impostato su Esteso, tutto funziona, tuttavia non lo voglio in modalità estesa.
in caso di mia sopra XAML non ha funzionato, ma il codice dietro il lavoro perfetto. Grazie –