J'ai rencontré un problème lors de l'utilisation de MVVM Lite EventToCommand dans un composant case à cocher d'une grille de données. EventToCommand ne fonctionne pas, l'action ne se déclenche jamais.Utilisation de EventToCommand sur un composant dans une grille de données
Non seulement à un composant de case à cocher, j'ai essayé d'utiliser EventToComment à un autre composant à l'intérieur d'un DataGrid. Et ça ne marche pas aussi.
Est-il possible d'utiliser EventToCommand sur un composant dans une grille de données? si c'est possible, alors comment l'implémenter?
est le code ici ..
XAML:
<sdk:DataGrid Name="dgSubmitProposal"
ItemsSource="{Binding Path=PeopleVM}"
SelectedItem="{Binding SelectedRateChange, Mode=TwoWay}"
FrozenColumnCount="{Binding FrozenColumnCount}"
TabNavigation="Cycle"
AutoGenerateColumns="False"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
VirtualizingStackPanel.VirtualizationMode="Standard"
ClipboardCopyMode="None">
<sdk:DataGrid.Columns>
<sdk:DataGridTemplateColumn Header="Select">
<sdk:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<CheckBox Name="chbSelect" IsChecked="{Binding IsChecked, Mode=TwoWay}">
<i:Interaction.Triggers>
<i:EventTrigger EventName="Click">
<cmd:EventToCommand Command="{Binding RowCheckCommand}"/>
</i:EventTrigger>
</i:Interaction.Triggers>
</CheckBox>
</DataTemplate>
</sdk:DataGridTemplateColumn.CellTemplate>
</sdk:DataGridTemplateColumn>
<sdk:DataGridTextColumn Header="Name" Binding="{Binding Name, Mode=TwoWay}" IsReadOnly="True" />
<sdk:DataGridTextColumn Header="Age" Binding="{Binding Age, Mode=TwoWay}" IsReadOnly="True"/>
</sdk:DataGrid.Columns>
</sdk:DataGrid>
Voir modèle Classe:
public RelayCommand RowCheckCommand
{
get;
private set;
}
public MainViewModel()
{
RowCheckCommand = new RelayCommand(() => MessageBox.Show("A checkbox in a datagrid Clicked!"));
}
désolé mon erreur, il suppose être "RowCheckCommand". Ça ne marche pas – micromonster