1.引入扩展行为命名空间
xmlns:behavior="http://schemas.microsoft.com/xaml/behaviors"
xmlns:Prism="http://prismlibrary.com/"
Prism:ViewModelLocator.AutoWireViewModel="true"
2.页面使用自定义事件触发器,并根据页面给后台行为传递集合元素
<DataGrid ItemsSource="{Binding menuBars}" x:Name="menubar" AutoGenerateColumns="False" >
<behavior:Interaction.Triggers>
<behavior:EventTrigger EventName="SelectedCellsChanged">
<behavior:InvokeCommandAction Command="{Binding menubarCommand}" CommandParameter="{Binding ElementName=menubar,Path=SelectedItem}"/>
</behavior:EventTrigger>
</behavior:Interaction.Triggers>
<DataGrid.Columns>
<DataGridTextColumn Header="名称" Binding="{Binding menuName}" ></DataGridTextColumn>
<DataGridTextColumn Header="颜色" Binding="{Binding menuColor }"></DataGridTextColumn>
<DataGridTextColumn Header="前景色" Binding="{Binding menuForeColor}"></DataGridTextColumn>
</DataGrid.Columns>
</DataGrid>
3.定义ViewModel的绑定行为
public DelegateCommand<MenuBarDto> menubarCommand { get; set; }