4

我试图了解如果您使用此构造函数,我必须做什么来覆盖ToolStripDropDown控件的行为:System.Windows.Forms

 var button = new ToolStripSplitButton("text","path to image", clickEventHandler)

那么下拉菜单只会显示我是否按住鼠标并且如果我使用这个

var button = new ToolStripSplitButton("text","path to image")

然后当我点击时下拉将显示。

我很清楚,提供单击事件处理程序非常明确地说“嘿,当我单击时,执行这个”,但在 a 的情况下,ToolStripSplitButton由于控件本身的拆分性质,区别有点模糊。

所以,我喜欢做的是a)当用户点击按钮部分时ToolStripSplitButton,点击事件处理程序正常执行b)当我在箭头部分单击或按下鼠标时,ToolStripSplitButton下拉显示

是否有任何 OOB 属性/方法可以做到这一点?

谢谢

4

1 回答 1

11

ToolStripSplitButton有两个点击处理程序。一种称为“Click”,另一种称为“ButtonClick”。构造函数中的一个是“单击”处理程序,无论您单击控件的哪个位置都会触发。“ButtonClick”处理程序仅在您单击按钮本身而不是箭头时触发。

尝试这个:

var button = new ToolStripSplitButton("text","path to image");
button.ButtonClick += clickEventHandler;
于 2011-02-03T13:25:12.620 回答