ListBoxItem MVVM 命令绑定中的 WPF ListBox 命令

WPF ListBox Commands within ListBoxItem MVVM Command Binding

我一直在努力寻找一种方法,在我的 ListBoxItem 的 ListBox 控件中添加命令按钮。我通过 ICommand 接口 MVVM 和命令绑定到 DataContext。我无法找到从 ListBox ItemsSource 中的 绑定到 Views DataContext 的方法。我继续收到 命令 "Not Found" 错误。任何人都可以帮助我了解如何实现这一目标。我相信它与命令绑定路径有关,但我不确定。任何帮助或指导都会很棒。

ListBox 中的 DataContext 个项目将是它们所代表的项目。因此,如果您的 ItemsSource 绑定到一个 Widget 列表,那么您的 ListBoxItemDataContext 将是一个 Widget。

如果您需要访问 ListBoxDataContext,而不是 ListBoxItem,那么您可以使用 RelativeSource:

<ListBox.ItemTemplate>
    <DataTemplate>
        <Button Command="{Binding RelativeSource={RelativeSource AncestorType={x:Type ListBox}},
                                  Path=DataContext.MyCommand}" />