0
我已經創建了一個我用4 buttons
創建的表單,它將修改listView
,每個表單都有其自己的點擊事件。我想知道是否可以避免在每個按鈕中添加方法調用,如果它們是在按鈕完成其單擊事件後可用的事件?來自共享事件的更新表
這樣做的原因是這樣我可以更新listView
這將反過來更新webBrowser
我已經創建了一個我用4 buttons
創建的表單,它將修改listView
,每個表單都有其自己的點擊事件。我想知道是否可以避免在每個按鈕中添加方法調用,如果它們是在按鈕完成其單擊事件後可用的事件?來自共享事件的更新表
這樣做的原因是這樣我可以更新listView
這將反過來更新webBrowser
下面是其導致「1」,然後點擊按鈕1時「所有」正被顯示給用戶的示例,「2」,然後選擇「全部」,當按鈕2被點擊等等等等
注:你不想做這樣的 - 看評論
public Form1()
{
InitializeComponent();
foreach(var b in Controls.OfType<Button>())
b.Click += new EventHandler(AnyButton_Click);
}
void AnyButton_Click(object sender, EventArgs e)
{
MessageBox.Show("all");
}
private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show("1");
}
private void button3_Click(object sender, EventArgs e)
{
MessageBox.Show("3");
}
private void button2_Click(object sender, EventArgs e)
{
MessageBox.Show("2");
}
它作爲剛剛加入簡單第二次點擊事件?我怎麼能(這是否)保證了這些命令的命令? – Sayse
@Sayse你真的不應該這樣做,依靠事件處理程序的排序(儘管事實上他們的確有訂單)是不好的做法。如果你想依賴它,你應該在每個按鈕特定處理程序的末尾調用通用方法。以這種方式維護代碼會容易得多。 – Servy
@Servy - 感謝您的建議..這些事件被調用的順序與其功能無關,因此我只需咬住CopyNPaste項目符號,謝謝! Nathan接受了你的答案,因爲它確實做了我希望做的事情。 – Sayse