Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/273.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# Windows形成不同的类,试图更改textbox.text_C#_.net_Arrays_Forms_Class - Fatal编程技术网

C# Windows形成不同的类,试图更改textbox.text

C# Windows形成不同的类,试图更改textbox.text,c#,.net,arrays,forms,class,C#,.net,Arrays,Forms,Class,我试图创建一个函数,从我的设置文件(HighscoreSaved wich被放入highscoreList数组)中获取数据,然后连接字符串并将其写入文本框(highScore.Text) 但是,当我调用函数时,什么都没有发生 这是我的代码: 表格1 下面是Highscore.Fetch()和Highscore.Set()应该调用的类 但是当我打电话给他们时,我的文本框里没有任何变化 public static class Highscore { public static

我试图创建一个函数,从我的设置文件(HighscoreSaved wich被放入highscoreList数组)中获取数据,然后连接字符串并将其写入文本框(highScore.Text)

但是,当我调用函数时,什么都没有发生

这是我的代码: 表格1

下面是Highscore.Fetch()和Highscore.Set()应该调用的类 但是当我打电话给他们时,我的文本框里没有任何变化

public static class Highscore
    {
        public static void  Fetch()
        {
            Form1.highscoreList[0] = "\t\t\t" + HighscoreSaved.Default.highscoreKeeper1 + "\t\t" + HighscoreSaved.Default.highscoreScore1;
            Form1.highscoreList[1] = "\t\t\t" + HighscoreSaved.Default.highscoreKeeper2 + "\t\t" + HighscoreSaved.Default.highscoreScore2;
            Form1.highscoreList[2] = "\t\t\t" + HighscoreSaved.Default.highscoreKeeper3 + "\t\t" + HighscoreSaved.Default.highscoreScore3;
            Form1.highscoreList[3] = "\t\t\t" + HighscoreSaved.Default.highscoreKeeper4 + "\t\t" + HighscoreSaved.Default.highscoreScore4;
            Form1.highscoreList[4] = "\t\t\t" + HighscoreSaved.Default.highscoreKeeper5 + "\t\t" + HighscoreSaved.Default.highscoreScore5;
            Form1.highscoreList[5] = "\t\t\t" + HighscoreSaved.Default.highscoreKeeper6 + "\t\t" + HighscoreSaved.Default.highscoreScore6;
            Form1.highscoreList[6] = "\t\t\t" + HighscoreSaved.Default.highscoreKeeper7 + "\t\t" + HighscoreSaved.Default.highscoreScore7;
            Form1.highscoreList[7] = "\t\t\t" + HighscoreSaved.Default.highscoreKeeper8 + "\t\t" + HighscoreSaved.Default.highscoreScore8;
            Form1.highscoreList[8] = "\t\t\t" + HighscoreSaved.Default.highscoreKeeper9 + "\t\t" + HighscoreSaved.Default.highscoreScore9;
            Form1.highscoreList[9] = "\t\t\t" + HighscoreSaved.Default.highscoreKeeper10 + "\t\t" + HighscoreSaved.Default.highscoreScore10;

            Form1.highscoreInt[0] = HighscoreSaved.Default.highscoreScore1;
            Form1.highscoreInt[1] = HighscoreSaved.Default.highscoreScore2;
            Form1.highscoreInt[2] = HighscoreSaved.Default.highscoreScore3;
            Form1.highscoreInt[3] = HighscoreSaved.Default.highscoreScore4;
            Form1.highscoreInt[4] = HighscoreSaved.Default.highscoreScore5;
            Form1.highscoreInt[5] = HighscoreSaved.Default.highscoreScore6;
            Form1.highscoreInt[6] = HighscoreSaved.Default.highscoreScore7;
            Form1.highscoreInt[7] = HighscoreSaved.Default.highscoreScore8;
            Form1.highscoreInt[8] = HighscoreSaved.Default.highscoreScore9;
            Form1.highscoreInt[9] = HighscoreSaved.Default.highscoreScore10;

            Form1.highscoreKeeper[0] = HighscoreSaved.Default.highscoreKeeper1;
            Form1.highscoreKeeper[1] = HighscoreSaved.Default.highscoreKeeper2;
            Form1.highscoreKeeper[2] = HighscoreSaved.Default.highscoreKeeper3;
            Form1.highscoreKeeper[3] = HighscoreSaved.Default.highscoreKeeper4;
            Form1.highscoreKeeper[4] = HighscoreSaved.Default.highscoreKeeper5;
            Form1.highscoreKeeper[5] = HighscoreSaved.Default.highscoreKeeper6;
            Form1.highscoreKeeper[6] = HighscoreSaved.Default.highscoreKeeper7;
            Form1.highscoreKeeper[7] = HighscoreSaved.Default.highscoreKeeper8;
            Form1.highscoreKeeper[8] = HighscoreSaved.Default.highscoreKeeper9;
            Form1.highscoreKeeper[9] = HighscoreSaved.Default.highscoreKeeper10;                
        }
        public static void Set()
        {
            Form1 mainForm = new Form1();
            string[] highscoreImported = new string[10];
            Array.Copy(Form1.highscoreList, highscoreImported, 10);
            string highscores = string.Join("\n", highscoreImported);
            mainForm.highscoreText(highscores);
        }

您正在
Set
方法中创建
Form1
的新实例,这就是您没有看到更改的原因。您应该将表单的一个实例传递给该方法

比如(在你的班级中,
Highscore
):

以后您可以这样称呼它:

private void button4_Click_1(object sender, EventArgs e)
{
    Highscore.Fetch();
    Highscore.Set(this); //notice "this"
}

更好的方法是一次完成所有任务

using System.Linq;

public static void  FetchAndSet()
{
    Form1.highscoreList[0] = "\t\t\t" + HighscoreSaved.Default.highscoreKeeper1;
    .
    .

    Form1.highscoreInt[0] = HighscoreSaved.Default.highscoreScore1;
    .
    .

    Form1.highscoreKeeper[0] = HighscoreSaved.Default.highscoreKeeper1;
    .
    .

    //Use LINQ's Take to Pull out the Top 10.   
    string highscores = string.Join("\n", highscoreList.Take(10));
    this.highscoreText(highscores);     
}
private void button4_Click_1(object sender, EventArgs e)
{
    Highscore.Fetch();
    Highscore.Set(this); //notice "this"
}
using System.Linq;

public static void  FetchAndSet()
{
    Form1.highscoreList[0] = "\t\t\t" + HighscoreSaved.Default.highscoreKeeper1;
    .
    .

    Form1.highscoreInt[0] = HighscoreSaved.Default.highscoreScore1;
    .
    .

    Form1.highscoreKeeper[0] = HighscoreSaved.Default.highscoreKeeper1;
    .
    .

    //Use LINQ's Take to Pull out the Top 10.   
    string highscores = string.Join("\n", highscoreList.Take(10));
    this.highscoreText(highscores);     
}