クラスListBoxのコレクションにバインドされたデータがあります。PersonCollection次に、タイプ のオブジェクトのデータ テンプレートを定義しました。データ テンプレートは、人物の名前用の とリストから人物を削除するを含むPersonで構成されています。まとめてとても素敵に見えます。DockPanelTextBlockButton
私が直面している問題は、データ テンプレートで定義されたボタンをクリックしたときに、リスト ボックスで選択した項目に到達 (および削除) できないことです。ボタンのハンドラーは次のとおりです。
private void RemovePersonButton_Click(object sender, RoutedEventArgs e)
{
Button clickedButton = (Button)e.Source;
DockPanel buttonPanel = (DockPanel)clickedButton.Parent;
Control control = (Control)button.Parent;
}
最後に作成されたオブジェクトcontrolは ですnull。つまり、要素ツリーをさらに上に進むことができないため、リストとそのSelectedItem. ここで注意すべき重要なことは、ウィンドウに複数のリストがあり、それらすべてのリストが同じデータ テンプレートを実装している、つまり、削除ボタン。
私が得ることができるすべての助けに感謝します。ありがとう。