c# - 如何遍历 timer_tick 事件上的对象列表?
问题描述
我有一个清单
static List<Participants> soop = ParticipantRepository.GetAllParticipants();
它有大约800个项目。然后是 alabel
和 a timer
。在timer_tick
,我想随机显示其中一项。这是该事件的代码
private void timer1_Tick(object sender, EventArgs e) {
foreach (var participants in soop)
{
a = participants.RollNumber;
label1.Text = a;
break;
}
counter++;
if (counter == 200) {
timer1.Stop();
pictureBox5.Visible = false;
counter = 0;
}
}
到目前为止,我还无法实现随机功能,因为只显示了一个 RollNumber,然后计时器会花费时间并用完。我究竟做错了什么?
解决方案
我建议使用随机类。
Random randomGen = new Random();
private void timer1_Tick(object sender, EventArgs e)
{
var i = randomGen.Next(0, soop.Count);
label1.Text = soop[i].RollNumber;
counter++;
if (counter == 200)
{
timer1.Stop();
pictureBox5.Visible = false;
counter = 0;
}
}
推荐阅读
- css - css:如何在 css 中获取屏幕高度?
- python - 将 JSON 反序列化为 python 类/对象
- mysql - 复制数据的更好方法?
- javascript - Vuex 动态模块没有被命名空间
- java - Spring Boot应用程序失败-错误java包不存在
- python - 同一个变量中超过 1 个单词的条件语句
- vba - vba 复制 listobject 表到 listobject 表
- apache-kafka - 修复kafka中的复制分区
- javascript - Xamarin WebView:无法使用 Facebook 和 Google 帐户登录
- c# - 在excel中导出内容的最佳方法是什么