2

Windows Phone 8 项目,XAML。我在页面内属于我自己的类 MyPivotItem(从 vanilla PivotItem 派生)的数据透视项中有一个 ListBox。列表框有一个带有一些控件的 ItemTemplate。我想将其中一个控件中的事件绑定到 MyPivotItem 中的方法。普通语法Click="OnClick"不起作用 - 框架字仅在 Page 类中搜索方法。

我可以派生控件本身并使用树导航和事件转发等进行一些技巧,但我想知道 XAML 的内部方法是否可以处理这种情况。

有没有办法以非编程方式将方法绑定到层次结构中比 XAML 文件的根对象更深的类?

4

1 回答 1

0

如果不使用行为或附加属性之类的东西,这是不可能的。XAML 文件始终与部分 C# 类相关联,您可以在此类中定义控件和事件。对于每个 Page.xaml,都会生成一个 Page.g.xaml 文件,该文件实际创建控件并绑定事件。但是,这些事件必须在根对象(部分类本身)中定义。

即使您使用附加的属性或行为来创建解决方法,您也只是将该程序代码卸载到其他地方并将其隐藏在 XAML 语法后面。

无论如何,您什么时候想绑定到控件的特定事件处理程序?你可以简单地使用 UserControls 吗?

于 2013-04-08T15:22:15.647 回答