我可以将 DataContext 设置为任何对象,然后将该对象的属性绑定(bind)到我的控件。
我想对事件处理程序做同样的事情。我有一类我希望 xaml 使用的事件处理程序。但是,xaml 会在后面的代码中查找事件处理程序。
<Button Click="OnSearch"/>
我收到警告,告诉我类隐藏代码中不存在 OnSearch。
- 我希望 OnSearch 在另一个对象中。我该怎么做?
- 如果我希望 xaml 在数据上下文对象中查找事件处理程序怎么办?
我是 WPF 新手,正在努力学习。我尝试在事件处理程序上绑定(bind),但这显然不起作用!
最佳答案
我认为为此你应该使用命令而不是事件。
您需要定义派生自 RoutedCommand 的 YourRoutedEvent
并将其绑定(bind)到您的Button 控件的命令。在您的 YourRoutedEvent 中,您可以在应用程序的不同状态下以不同的方式实现您想要的任何复杂逻辑,这可能是您想要的,这就是询问动态事件绑定(bind)的原因。
这是一个演示命令绑定(bind)技术的示例链接:
问候。
关于c# - 如何引用不在代码隐藏中但在另一个对象中的事件处理程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6753147/