将标签绑定到 ViewModel 属性

Bind Tag to ViewModel Property

<DataTemplate x:Key="ItemTemplate">
        <DockPanel Width="Auto">
            <Button DockPanel.Dock="Top" Tag="{Binding id}">
                <Button.Template>
                    <ControlTemplate >
                        <Image Source="{Binding image}"/>
                    </ControlTemplate>
                </Button.Template> 
            </Button>
            <TextBlock Text="{Binding title}" HorizontalAlignment="Center" DockPanel.Dock="Bottom"/>
        </DockPanel>
</DataTemplate>

<Grid x:Name="LeftGrid" Grid.Row="2" Grid.Column="0" >
 <Border BorderThickness="1" BorderBrush="Red">
     <ItemsControl ItemTemplate="{StaticResource ItemTemplate}" ItemsSource="{Binding DisplayMovies.View}">
         <ItemsControl.ItemsPanel>
               <ItemsPanelTemplate>
                   <UniformGrid Columns="5"/>
               </ItemsPanelTemplate>
         </ItemsControl.ItemsPanel>
      </ItemsControl>
   </Border>
</Grid>

我正在将每个 ButtonTag 值设置为 id 的值。 Whenever a Button is selected, I would like to pass this Tag value to a property in my ViewModel.

有人可以帮我解决这个问题吗?我总是从 ViewModel 跳到 XAML,从不反过来

我还应该指出 Binding id 并不是指我的 ViewModel。它指的是 ItemsSource="{Binding DisplayMovies.View}"

中的 property

你的意思是这样的吗?

 <Button 
    Command="{Binding DataContext.YourVmCommand, 
               RelativeSource={RelativeSource 
                   AncestorType={x:Type ItemsControl}}}}"
    CommandParameter="{Binding Id}"
    DockPanel.Dock="Top" >