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 關注
- 109 瀏覽
添加回答
舉報