c# - C#循环遍历名称列表并在每次循环时在不同的标签上显示名称
问题描述
我正在创建这个 Random Draw 应用程序。例如,用户输入 6 个名称,然后他们点击随机化按钮,名称随机显示在彼此旁边的标签中。因此,例如 index[0] 处的名称将播放 index[3] 处的名称,依此类推。我遇到的问题是我不确定如何循环并在不同的标签上显示每个名称。有没有办法计算我的标签并通过这种方式循环?这是我的代码,用于遍历列表中的名称并随机选择一个显示在第一个标签上。
for(int i = 0; i < names.Count; i++)
{
Random rand = new Random();
int index = rand.Next(names.Count);
var name = names[index];
lblFirstName.Text = name;
lblFirstName.Visible = true;
names.RemoveAt(index);
}
如您所见,名称将始终显示在 lblFirstName 上。我还有 5 个名为 lblSecondName 等的标签。
解决方案
var firstNames = new [] { lblFirstName1, lblFirstName2 , lblFirstName3 , .......... };
for(int i = 0; i < names.Count; i++)
{
Random rand = new Random();
int index = rand.Next(names.Count);
var name = names[index];
firstNames[i].Text = name;
firstNames[i].Visible = true;
names.RemoveAt(index);
}
推荐阅读
- html - 无边框后如何删除剩余空间
- azure-devops - 是否可以批准来自微软团队中 azure repos 的拉取请求?
- asp.net-mvc - 在两个日期之间作为 where 条件以及 Linq 中的 GETALL() 方法
- javascript - 如何正确获取输入数据并在函数中调用?
- graphviz - 如何在 Graphviz 中划掉一个节点?
- r - 根据分组和索引汇总一列中的值
- vuejs2 - 根据选择选项值过滤 Vue 列表
- javascript - 非顺序事件冒泡 onClick vs addEventListener
- graph - 在自然语言处理中使用图进行文本分类
- pandas - 在与其他数据框的多个匹配条件后将值分配给新的 df 列