我在這樣的代碼中創建了一些按鈕。代碼隱藏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]);
}
}
通過這樣的按鈕事件處理函數:
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;
}
而且它給我的錯誤:
錯誤1,沒有超載的 'SideButton_Click' 匹配委託 'System.EventHandler'
我有點困惑,因爲我在這裏失蹤,任何幫助將不勝感激。謝謝,
安迪
沒有必要更改方法簽名 - 可以使用(object,EventArgs)構造一個'RoutedEventHandler'的方法。誠然,你不會從'RoutedEventArgs'獲得額外的信息,但它會編譯並運行得很好。 – 2010-07-18 16:10:11