In meiner MainWindows habe ich eine ListBox. Ich definierte Befehle zu cal, wenn der Benutzer meine Window.InputBindings
hoch/runter/del drücken.InputBindings für ListBox überschreiben
Wie kann ich meine ListBox schreiben, um meine Befehle und keinen Standardbefehl zu verwenden?
<Window ...>
<Window.InputBindings>
<KeyBinding Command="{Binding UndoCommand}"
Key="Z"
Modifiers="Ctrl"/>
<KeyBinding Command="{Binding PrevItemCommand}"
Key="Up"/>
<KeyBinding Command="{Binding NextItemCommand}"
Key="Down"/>
<KeyBinding Command="{Binding RemoveCommand}"
Key="Delete"/>
</Window.InputBindings>
<Grid>
<ListBox Grid.Row="0"
Grid.Column="0"
x:Name="listRes"
Style="{StaticResource StyleListBox}"
ItemsSource="{Binding Results}"
SelectedItem="{Binding SelectedItem}"/>
</Grid>
</Window>
Ich habe Stützpunkte in meine Befehle, werden sie nicht erreicht, wenn ich auf einen Artikel nach dem Klicken verwenden oben/unten. Sie werden erreicht, wenn ich nach dem Klicken auf einen anderen Gegenstand auf/ab gehe.
Edit (erklären letzten Satz):
private ICommand _previtemCommand;
public ICommand PrevItemCommand
{
get
{
if (_previtemCommand == null)
_previtemCommand = new RelayCommand(OnPrevItem);
return _previtemCommand;
}
}
private void OnPrevItem()
{
// Do something
}
private ICommand _nextitemCommand;
public ICommand NextItemCommand
{
get
{
if (_nextitemCommand == null)
_nextitemCommand = new RelayCommand(OnNextItem);
return _nextitemCommand;
}
}
private void OnNextItem()
{
// Do something
}
A hinzugefügt Stützpunkte auf Funktionen OnNextItem
und OnPrevItem
.
- Nach einem Klick auf ein Element in der List-Box (ListBox bekam den Fokus), Auf-/Ab-Tasten ausgewählte Element ändern, aber der Code nicht bricht (meine Funktionen werden nicht genannt)
- auf einem Scheck Nach einem Klick in meinem Fenster (ListBox verloren den Fokus), Auf-/Ab-Tasten die Code Pausen (meine Funktionen aufgerufen werden)
„Sie werden nicht erreicht wenn ich aufbrauche/d nach dem Klicken auf einen Gegenstand besitzen. Sie werden erreicht, wenn ich nach dem Klicken auf einen anderen Gegenstand nach oben/unten blicke. "Was bedeutet das genau? Könnten Sie bitte Ihr Problem näher erläutern? – mm8
@ mm8 Ich habe meine Frage bearbeitet –