То, что предложил Джефф Йейтс, должно сработать.
Однако другой альтернативой является создание собственных производных классов (MyToolSTripButton, MyToolStripTextBox ... и т. Д.), Которые придают этим элементам свойство ContextMenuStrip, которое можно установить во время разработки, и чтобы ваши производные классы определяли правую кнопку мыши или что-то подобное другие события вызовут отображение контекстного меню.
Это освобождает от любых знаний, необходимых только для тех предметов, которые интересуют.
Ниже приведен один из таких примеров использования ToolStripTextBox в качестве элемента.
public class MyTextBox : ToolStripTextBox
{
ContextMenuStrip _contextMenuStrip;
public ContextMenuStrip ContextMenuStrip
{
get { return _contextMenuStrip; }
set { _contextMenuStrip = value; }
}
protected override void OnMouseDown(MouseEventArgs e)
{
if (e.Button == MouseButtons.Right)
{
if (_contextMenuStrip !=null)
_contextMenuStrip.Show(Parent.PointToScreen(e.Location));
}
}
}