problème, c'est que chaque fois que la ligne de la grille est cliquée à droite l'élément sélectionné est null.how est-ce que je fais une ligne de la grille sélectionnée quand une ligne a été cliquée?clic droit sur la ligne de la grille
grâce Jamal
problème, c'est que chaque fois que la ligne de la grille est cliquée à droite l'élément sélectionné est null.how est-ce que je fais une ligne de la grille sélectionnée quand une ligne a été cliquée?clic droit sur la ligne de la grille
grâce Jamal
Je pense que la solution peut avoir un problème. Chaque fois qu'une ligne est chargée, elle ajoute un gestionnaire d'événements, donc si la ligne est réutilisée, elle peut accumuler des gestionnaires d'événements. Je recommande de supprimer le gestionnaire d'événements lorsque la ligne est déchargée. Voici mon code suggéré:
private void dg_LoadingRow(object sender, DataGridRowEventArgs e)
{
e.Row.MouseRightButtonDown += new MouseButtonEventHandler(Row_MouseRightButtonDown);
}
void Row_MouseRightButtonDown(object sender, MouseButtonEventArgs e)
{
dg.SelectedItem = ((sender) as DataGridRow).DataContext;
}
// new portion
private void dg_UnloadingRow(object sender, DataGridRowEventArgs e)
{
e.Row.MouseRightButtonDown -= new MouseButtonEventHandler(Row_MouseRightButtonDown);
}
est ici la solution
Silverlight 4? Vous parlez de DataGrid? – AnthonyWJones
oui offcoarse. –