首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >修饰符“private”在C#中对该项无效

修饰符“private”在C#中对该项无效
EN

Stack Overflow用户
提问于 2012-05-16 03:38:56
回答 4查看 2.8K关注 0票数 0

它给了我这样一个错误,我似乎找不出问题是什么。

代码语言:javascript
复制
private void Form1.KeyDown(object sender, KeyEventArgs e)  // **THE ERROR HERE**   
    {
        if (ListBox1.Items.Contains(e.KeyCode))
        {
            ListBox1.Items.Remove(e.KeyCode);
            ListBox1.Refresh();
            if (timer1.Interval > 400)
            {

                timer1.Interval -= 10;
            }
            if (timer1.Interval > 250)
            {
                timer1.Interval -= 7;

            }
            if (timer1.Interval > 100)
            {
                timer1.Interval -= 2;

            }
            difficultyProgressBar.Value = 800 - timer1.Interval;
            stats.Update(true);


        }
        else
        {

            stats.Update(false);

        }


        correctLabel.Text = "Correct: " + stats.correct;
        missedLabel.Text = "Missed: " + stats.missed;
        totalLabel.Text = "Total: " + stats.total;
        accuracyLabel.Text = "Accuracy: " + stats.accuracy + "%";


    }

这是一些教程中的代码,所以它应该可以工作。可能的问题是什么?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-05-16 03:41:03

您的第一行应如下所示:

代码语言:javascript
复制
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
    ...
}

没有圆点。

点使编译器认为您引用了表单的KeyDown事件,而您只需要一个侦听该事件的方法。

票数 6
EN

Stack Overflow用户

发布于 2012-05-16 03:42:13

Interfacename.methodname语法是为显式接口实现保留的。接口只包含公共方法,因此"private“是非法的。

票数 3
EN

Stack Overflow用户

发布于 2012-05-16 03:42:49

在VB中,当您声明一个事件处理程序时,您添加了Handles <Class>.<Event>,它会自动为您挂接所有内容。在C#中,事件处理程序只是附加到事件的方法。因此,您应该将方法名称重命名为Form1_KeyDown。但是,您仍然需要将其挂钩(通过Visual Studio设计器或在代码中)。

代码语言:javascript
复制
public class Form1 : Form
{
    ...
    public Form1()
    {
        InitializeComponent();
        this.KeyDown += new KeyEventHandler(this.Form1_KeyDown);
    }
    ...
    private void Form1_KeyDown(object sender, KeyEventArgs e) { ... }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10607642

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档