Bonjour,

Je réalise une application en Silverlight 3 avec le Pattern MVVM.
J'ai ajouté une datagrid avec une colonne de bouton.

Fichier XAML :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
<data:DataGrid AutoGenerateColumns="False" ItemsSource="{Binding UserList}">
      <data:DataGrid.Columns>
           <data:DataGridTextColumn Header="Nom" Width="113" IsReadOnly="True" x:Name="Col1" Binding="{Binding Nom}"/>
                 <data:DataGridTemplateColumn.CellTemplate>
                      <DataTemplate>
                           <Button Content="Voir" cmd:ButtonBaseExtensions.Command="{Binding ViewCommand}"
cmd:ButtonBaseExtensions.CommandParameter="{Binding ElementName=Col1, Path=Binding}"/>
                      </DataTemplate>
                  </data:DataGridTemplateColumn.CellTemplate>
              </data:DataGridTemplateColumn>
          </data:DataGrid.Columns>
       </data:DataGrid>
Dans le ViewModel :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
public ICommand ViewCommand { get; internal set; }
ViewCommand = new RelayCommand<string>((user) => ExecuteViewCommand(user), (user) => true);
 
public void ExecuteViewCommand(string user)
{
    ....
}
Rien ne se passe quand je clique sur le bouton "Voir".
Est-ce que c'est possible de coder un évènement d'un bouton dans une datagrid avec MVVM où il faut passer par le code behind ?

Merci