如何将C#中代码中创建的按钮的单击事件与方法相关联?

时间:2012-04-30 02:16:17

标签: c# windows-phone-7 event-handling

我正在构建一个Windows Phone应用程序,我无法将动态创建的Button与其事件处理程序关联。

我正在使用的代码是:

public partial class MainPage : PhoneApplicationPage
{
    Button AddButton

    public MainPage()
    {
        CreateInterestEntry();
    }

    private void CreateInterestEntry()
    {
        EntrySegment = getEntrySegment();
        ContentPanel.Children.Add(EntrySegment);
    }

    private void AddButton_Click(Object sender, RoutedEventArgs e)
    {
        //Stuff to do when button is clicked
    }

    private Grid getEntrySegment()
    {
        Grid EntrySegment = new Grid();

       //Creating the grid goes here

        AddButton = new Button();
        AddButton.Content = "Add";
        AddButton.Click += new EventHandler(AddButton_Click);

        return EntrySegment;
    }
}

}

使用此代码,它会抱怨AddButton_Click没有重载匹配委托“System.EventHandler”。

它几乎与msdn上的例子here下的代码完全相同,但我将AddButton_Click中的参数类型从EventArgs更改为RoutedEventArgs,否则Visual Studio会告诉我它无法从System.EventHandler隐式转换到System.RoutedEventHandler。

提前致谢

1 个答案:

答案 0 :(得分:2)

试试这个:

AddButton.Click += new RoutedEventHandler(AddButton_Click);

Click事件处理程序:

void AddButton_Click(object sender, RoutedEventArgs e)
{
}