Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 自己组件中的OnClick方法工作缓慢_C#_Events - Fatal编程技术网

C# 自己组件中的OnClick方法工作缓慢

C# 自己组件中的OnClick方法工作缓慢,c#,events,C#,Events,我正在尝试制作我自己的组件,我将使用它来更改背景。现在我有了一个空的组件表单,我把它放在表单上。要单击事件,我添加了一个代码: private void myComponent_Click(object sender, EventArgs e) { this.BackColor = (this.BackColor == Color.Red) ? Color.Blue : Color.Red; } 当我单击“慢速”时,它会工作。但当我快速点击时,背景总是在第二次

我正在尝试制作我自己的组件,我将使用它来更改背景。现在我有了一个空的组件表单,我把它放在表单上。要单击事件,我添加了一个代码:

 private void myComponent_Click(object sender, EventArgs e)
    {
        this.BackColor = (this.BackColor == Color.Red) ? Color.Blue : Color.Red;
    }

当我单击“慢速”时,它会工作。但当我快速点击时,背景总是在第二次点击时发生变化。这个代码有什么问题?我也尝试过使用鼠标点击,但结果是一样的

快速单击时,您可能会使用
双击
,而不是
单击

同时处理
双击
事件

例如:

 private void userControl11_DoubleClick(object sender, EventArgs e)
        {
            this.BackColor = (this.BackColor == Color.Red) ? Color.Blue : Color.Red;
        }

        private void userControl11_Click(object sender, EventArgs e)
        {
            this.BackColor = (this.BackColor == Color.Red) ? Color.Blue : Color.Red;
        }

同时尝试处理双击事件。(建议在您自己的组件中处理事件的方法是重写OnClick。)您自己是否处理任何绘制事件?您是否覆盖了背景色?因此,当双击出现时,单击两次都不起作用?我怎样才能解决我的问题?