簡體   English   中英

獲取C#Windows窗體中的事件源

[英]Get source of event in C# Windows Forms

我有一個string列表,我想使用它創建一個ToolStripItem菜單(列表大小或其內容在調試時都不知道),並且我希望每個項目都執行相同的事件,因此我使用該代碼瀏覽該列表:

foreach (string i in items)
{
    ToolStripItem item = (ToolStripItem)toolStripMenuItem1.DropDownItems.Add(i);
    item.Click += new EventHandler(item_Click);
}

問題是,在item_Click方法中,我需要知道以上哪個項目觸發了事件。 如果我使用的是WPF,則應該使用RoutedEventArgs及其.Source屬性,但是由於我只是在常規的Windows Forms應用程序中,因此我不太確定該怎么做。 有簡單的方法嗎? 謝謝。

在點擊事件中使用sender參數

var item = sender as ToolStripItem;
if(item != null)
{
    ...
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM