Windows phone 7 单击以编程方式生成的元素

Windows phone 7 单击以编程方式生成的元素,windows-phone-7,Windows Phone 7,我已经通过编程生成了很多文本块。我想将onclick函数绑定到它们。。。如果我将textblock写入我的xaml代码,这很容易,但是如果textblock是以编程方式生成的,我该怎么做呢 到目前为止,我所拥有的: TextBlock tb1 = new TextBlock(); tb1.KeyDown += new System.Windows.Input.KeyEventHandler(MyTextBlock_KeyDown); ... private void MyTextBlock_Ke

我已经通过编程生成了很多文本块。我想将onclick函数绑定到它们。。。如果我将textblock写入我的xaml代码,这很容易,但是如果textblock是以编程方式生成的,我该怎么做呢

到目前为止,我所拥有的:

TextBlock tb1 = new TextBlock();
tb1.KeyDown += new System.Windows.Input.KeyEventHandler(MyTextBlock_KeyDown);
...
private void MyTextBlock_KeyDown(object sender, GestureEventArgs e) {
  MessageBox.Show("hello world");
}
public主页()
{
初始化组件();
TextBlock=新的TextBlock();
block.Text=“点击我”;
block.Tap+=新事件处理程序(block\u Tap);
标题板。子项。添加(块);
}
无效块\点击(对象发送器、手势事件参数e)
{
//做点什么
}

这很好…

你能提供你的XAML以便提供准确的C版本吗?我得到错误:“MyTextBlock#u KeyDown”没有重载匹配委托“System.Windows.Input.KeyEventHandler”你创建了事件处理程序吗?您应该调整我发布的示例代码,使其与您的特定代码配合使用。您有什么问题?没有“MyTextBlock_KeyDown”的重载与“delegate”系统匹配。Windows.Input.KeyEventHandler是我得到的错误…我编辑了答案,您的事件参数定义不正确。这不是手势事件参数。。。。
public MainPage()
{
    InitializeComponent();

    TextBlock block = new TextBlock();
    block.Text = "Tap me";
    block.Tap += new EventHandler<GestureEventArgs>(block_Tap);

    TitlePanel.Children.Add(block);
}

void block_Tap(object sender, GestureEventArgs e)
{
    //Do something
}