2 回答
TA贡献1963条经验 获得超6个赞
您可以像这样为您的按钮制作一个处理程序:
Button myButton=new Button();
myButton.Click += delegate(object sender, RoutedEventArgs e) {
//handle event
};
我希望这有帮助。
TA贡献1776条经验 获得超12个赞
Reza 在如何为代码中生成的 Button 编写更多代码方面是正确的。
但是,我要警告您,这不是 MVVM 的正确 WPF 用法,您可能会在以后给自己找麻烦。
我建议您将视图的按钮绑定到可以在 ViewModel 中定义的 ICommand,该 ViewModel 将处理您的文本更新逻辑。正如您所提到的,您有不同的视图控件表示基于您的按钮按下的数据。您目前幸存下来,因为视图直接相互更新(这很糟糕)。当您想在其他视图中表示此数据时,假设您希望您的按钮在 2 个窗口中更新 3 个不同布局中的 5 个标签,您的视图中将有不可维护的引用。
如果您让 ViewModel 从绑定到按钮的视图中获取命令,则可以让命令逻辑更新 ViewModel 中可以绑定多个视图的属性,并通过 INotifyPropertyChanged 同时更新它们。更不用说,ICommand 还可以让您完全禁止按钮被点击。
考虑花一个小时查看本教程以了解 View 和 ViewModel 的分离。你现在的所作所为似乎是在为你日后的世界埋下伏笔……
- 2 回答
- 0 关注
- 126 浏览
添加回答
举报
