J'ai créé des boutons dans le code comme ceci.Button Handler dans codebehind C# WPF
if (infoLoader.categoriesLoaded)
{
sideBarButtons = new Button[infoLoader.categoriesLength];
for (int i = 0; i < sideBarButtons.Length; i++)
{
sideBarButtons[i] = new Button();
sideBarButtons[i].Content = infoLoader.categories[i].name;
Canvas.SetLeft(sideBarButtons[i], 30);
Canvas.SetTop(sideBarButtons[i], 110 + (40 * i));
sideBarButtons[i].Click += new EventHandler(this.SideButton_Click);
leftSideBar.Children.Add(sideBarButtons[i]);
}
}
Avec la fonction de gestion des événements de bouton comme ceci:
private void SideButton_Click(object sender, EventArgs e)
{
// Uhh
Console.WriteLine("The Button has been clicked.");
mainText.Text = infoLoader.games[0].id.ToString() + ", " + infoLoader.games[0].name + ": " + infoLoader.games[0].description;
MainLaunchBtn.Content = "Launch " + infoLoader.games[0].name;
}
Et il me donne l'erreur:
Erreur 1 Pas de surcharge pour délégué matches 'SideButton_Click' 'System.EventHandler'
Je suis un peu confus quant à ce qui me manque ici, et toute aide serait appréciée. Merci,
Andy
Il n'est pas nécessaire de changer la signature de méthode - une méthode qui prend (object, EventArgs) peut être utilisée pour construire un 'RoutedEventHandler'. Certes, vous n'obtiendrez pas les informations supplémentaires de 'RoutedEventArgs', mais il compilera et fonctionnera très bien. –