将随机转换为int visual studio 2015

时间:2016-02-28 18:55:31

标签: c# winforms random visual-studio-2015

为什么这不起作用? 它是在视觉研究2015年,Windows窗体应用程序C#

namespace guessing
{
    public partial class Form1 : Form
    {
        Random rnd = new Random();
        int rndm = rnd.Next(1, 13);

rnd下有一个错误,上面写着:

  

"字段初始值设定项不能引用非静态字段,方法或   property' Form1.rnd' "

3 个答案:

答案 0 :(得分:6)

在C#中,语句不能立即在类声明下发生。它们需要成为函数或方法的一部分。

namespace guessing
{
    public partial class Form1 : Form
    {
        void MethodX()
        {
            Random rnd = new Random();
            int rndm = rnd.Next(1, 13);
            /* to be continued... */ 
        }
    }
}

答案 1 :(得分:0)

是的,正如SonerGönül所说,你必须将此代码添加到表单中的方法中。因为您可能使用Designer创建了Form,只需转到Events并创建方法created(或类似的)。然后将代码放入创建方法的主体中。

答案 2 :(得分:-1)

试试这个:

Name = input('Enter name:\n')    # input is a function 
Class = input('Enter class:\n')  # hence parentheses
Time = input('Enter time:\n')    # and an (here: optional) argument, the prompt

l = [Name, Class, Time]  # now works: l.append(sth)

修改

回应TomTom:

有很多方法可以解决这个问题。如果您需要始终保持namespace guessing { public partial class Form1 : Form { int rndm = new Random().Next(1, 13); 的实例可用,请在课程级别定义它,就像您已有的那样。

Random