我有一个名字列表。这些名称链接到标签。当我点击标签时,会选择为该标签指定的随机名称。
我需要的是当点击一个按钮时,它会为每个标签选择一个随机名称。
例如;
我在列表中有5个名字,每个列表都链接到一个单独的标签。将随机选择一个名称作为标签。当点击一个按钮时,我需要所有10个标签来选择一个随机名称。
希望这是有道理的。我在表单上使用Visual Studio 2010和c#。非常感谢
答案 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];
}
}