如何让按钮随机选择并显示列表中的名称

时间:2015-12-06 15:39:10

标签: c# visual-studio-2010 random

我有一个名字列表。这些名称链接到标签。当我点击标签时,会选择为该标签指定的随机名称。

我需要的是当点击一个按钮时,它会为每个标签选择一个随机名称。

例如

;

我在列表中有5个名字,每个列表都链接到一个单独的标签。将随机选择一个名称作为标签。当点击一个按钮时,我需要所有10个标签来选择一个随机名称。

希望这是有道理的。我在表单上使用Visual Studio 2010和c#。非常感谢

3 个答案:

答案 0 :(得分:1)

问题非常模糊。

但是,从字符串列表中选择随机字符串的方法如下所示:

 public string ChooseRandomName(List<string> names)
 {
     Random rnd = new Random();
     return names[rnd.Next(0, names.Count)];
 }

现在,唯一要做的就是使用正确的输入调用此方法,并将输出归因于正确的标签。不确定如何给出标签,但是如下:

label1.Text = ChooseRandomName(listOfNamesForLabel1);

我希望这会有所帮助。

答案 1 :(得分:1)

public string ChooseRandomName(List<string> names,Random rnd)
{
   return names[rnd.Next(0, names.Count)];
}
Random rnd = new Random();
label1.Text = ChooseRandomName(listOfNames,rnd);
label2.Text = ChooseRandomName(listOfNames,rnd);

每次都不要创建初始化随机对象。另外,它会给出相同的价值。 check this link

答案 2 :(得分:0)

所以这就是我所拥有的。这是我需要的代码的一部分(不要担心它的内容)。守门员标签被称为“守门员”我的按钮应该被称为“pickTeam”,但是当点击时显示为“button1_Click”private void button1_Click(object sender, EventArgs e)

我需要它,以便当点击按钮时,每个标签(我可以自己做一次)会选择一个已经给出的随机名称。即; Begovic,De Gea等等。

我有一个每个职位的方法。这是守门员,一旦我知道这一点,我可以为其他位置做到这一点。感谢

 private void goalkeeper_Click(object sender, EventArgs e)
        {
            Random rand = new Random();
            List<string> goalkeepers = new List<string>();
            goalkeepers.Add("Neuer");
            goalkeepers.Add("De Gea");
            goalkeepers.Add("Lloris");
            goalkeepers.Add("Begovic");
            for (int i = 0; i < 4; i++)
            {
                int index = rand.Next(0, 4);
                goalkeeper.Text = goalkeepers[index];
            }
        }