So wählen Sie ein ListBoxItem bei Klick auf button im Template?

Habe ich folgende Daten Vorlage angewendet wird, um ein ListBox:

<DataTemplate x:Key="MyTemplate" DataType="{x:Type DAL:Person}">
    <StackPanel Orientation="Horizontal">
        <Button Content="X" Command="{x:Static cmd:MyCommands.Remove}"/>
        <TextBlock Text="{Binding Person.FullName}" />
    </StackPanel>
</DataTemplate>

Wenn ich auf den button der Befehl wird ausgelöst, aber das ListBoxItem nicht ausgewählt werden. Wie kann ich erzwingen, dass es ausgewählt, so dass ich können Sie den ausgewählten Artikel in meinem "ausgeführt" - Methode?

Dank

  • Ich könnte übergeben Sie die Schaltfläche über den Befehl, und suchen Sie den Knopf auf die andere Seite, aber das ist eine Art hack, fühle ich mich...
  • Gut, ich löschte meine Antwort (D. H. fügen Sie einen trigger, der wählt die ListBoxItem, wenn Sie den Tastatur-Fokus innerhalb) denn auf den zweiten Gedanken, ist es vielleicht nicht der beste Weg, dies zu behandeln in den meisten Fällen.
  • Hier gilt das gleiche. Meine erste Lösung war zu binden "Selbst" zu CommandParameter, und auf "ausgeführt" Methode, die ich dann bekommen die LisBoxItem wie folgt: ListBoxItem selectedListBoxItem = ((ListBoxItem) MyListBox.ContainerFromElement((DependencyObject) e.Parameter)); Aber ich glaube nicht, dass diese sehr sauber...
Schreibe einen Kommentar