我「逼」從方法點擊一個按鈕與button_Click(null,null)
如何button_click(NULL,NULL)和實際點擊用戶
區分在button_Click
方法我想實際點擊一個區分強制點擊(button_Click(null,null)
)。
我想我可以用一個if語句來檢查if (sender.Equals(null))
,但這只是猜測,並沒有奏效。對不起,如果這看起來像,請給我一個答案,但我還沒有發現任何類似的東西。
我「逼」從方法點擊一個按鈕與button_Click(null,null)
如何button_click(NULL,NULL)和實際點擊用戶
區分在button_Click
方法我想實際點擊一個區分強制點擊(button_Click(null,null)
)。
我想我可以用一個if語句來檢查if (sender.Equals(null))
,但這只是猜測,並沒有奏效。對不起,如果這看起來像,請給我一個答案,但我還沒有發現任何類似的東西。
的常用方法處理這個問題甚至沒有嘗試處理它。
不要叫你的事件處理程序,當事件發生時除外。創建一個可重用的方法,它需要一個參數來指示您是否有實際的按鈕點擊。然後使用一個值從您的button_Click
事件處理程序中調用它,並從具有另一個值的新方法中調用它。現在
private void button_Click(object sender, EventArgs e) {
HandleButtonClick(isRealClick: true);
}
private void SimulateButtonClick() {
HandleButtonClick(isRealClick: false);
}
private void HandleButtonClick(bool isRealClick) {
// ...
}
,而不是調用button_Click(null, null)
,叫SimulateButtonClick()
。
調用button_Click(null, null)
的缺點是,它是不是在所有明顯給其他人閱讀你的代碼,您的通話不應該被更改爲button_Click(button, EventArgs.Empty)
。這樣的改變會破壞你的代碼。如果可能的話,你應該編寫你的代碼,以便易於理解和維護。
你能給更多的上下文嗎?什麼導致button_Click(null,null)?無論如何,你爲什麼需要這樣做? 你的問題表明你正在做一件非常有趣的事情... – Squiggle
什麼「沒有工作」?它應該工作,你什麼都不告訴我們。 –
@Squiggle如果一個列表框項被點擊,它強制一個button_click(null,null) – mythic