動態創建了一系列的PictureBox,每個PictureBox都動態添加一個ContextMenuStrip
PictureBox pictureBox = new PictureBox();this.Controls.Add(pictureBox); pictureBox.ContextMenuStrip = ContextMenuStrip1;
由於PictureBox是使用代碼添加的,在ContextMenuStrip的點擊事件中,無法像拖拽添加控件一樣獲取到控件的資源。
經過網上查詢,可以用 ContextMenuStrip1.SourceControl 獲取到源控件。
這樣獲取到的控件,程序還不知道是什么控件。
所以用 as 來轉換類型,只有類型一致的才可以轉換成功。
PictureBox pb = ContextMenuStrip1.SourceControl as PictureBox;
ContextMenuStrip1 的源控件是 PictureBox