0
private void lineGraph1_MouseEnter(object sender, EventArgs e)
        {
            MessageBox.Show("test");
        }

我希望当我将鼠标移到控制区域上/上时它会显示消息。我从这里下载了控制 dll:

http://www.codeproject.com/Articles/274318/Line-Graph-Component-in-Csharp

下载了演示并在那里使用了 dll 文件。所以我现在有了 Form1 上的控件,然后我在 Form1 设计器中的控件上右键单击鼠标属性事件并双击 Mouse Enter 但是当我将鼠标移到控件上时什么也没有发生。

我做错了什么 ?

4

2 回答 2

1

添加该方法本身不会执行任何操作。您必须将其添加为事件处理程序,例如使用

lineGraph1.MouseEnter += new EventHandler(lineGraph1_MouseEnter);

当您从右上角的事件下拉列表中选择 MouseEnter 事件时,表单编辑器会为您执行此操作。

于 2013-02-28T17:08:42.650 回答
0

我认为这是因为 LineGraph 对自己有一些控制。例如,如果您将 onmouseenter 事件直接放在 PlotArea 控件上,它可能会正常工作。

    public PlotArea()
    {
        this.SetStyle(ControlStyles.ResizeRedraw, true);
        this.SetStyle(ControlStyles.OptimizedDoubleBuffer, true);
        this.SetStyle(ControlStyles.AllPaintingInWmPaint, true);
        this.SetStyle(ControlStyles.UserPaint, true);
        this.MouseEnter += new EventHandler(PlotArea_MouseEnter);
    }

    void PlotArea_MouseEnter(object sender, EventArgs e)
    {
        MessageBox.Show("test");
    }
于 2013-02-28T17:24:50.970 回答