You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在事件中从sender获取ToolStripComboBox控件?

获取触发事件的ToolStripComboBox名称

你可以通过ComboBox的Parent属性找到它所在的ToolStripControlHost,再通过该Host的Owner属性获取对应的ToolStripComboBox,具体代码如下:

private void ToolStripComboBox_DropDown(object sender, EventArgs e)
{
    ComboBox comboBox = (ComboBox)sender;
    // 获取ComboBox的父容器ToolStripControlHost
    ToolStripControlHost host = (ToolStripControlHost)comboBox.Parent;
    // 从Host的Owner拿到所属的ToolStripComboBox
    ToolStripComboBox toolStripComboBox = (ToolStripComboBox)host.Owner;
    string name = toolStripComboBox.Name;
}

原理说明

  • ToolStripComboBox是通过ToolStripControlHost来包裹内部的ComboBox控件的,因此内部ComboBox的直接父控件是ToolStripControlHost
  • ToolStripControlHost的Owner属性指向的就是承载它的ToolStripComboBox实例

内容的提问来源于stack exchange,提问作者Rico Strydom

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 15:09:49