我在窗口表单上有一个开始和一个完成按钮,并且我把车辆存储在一个列表中。
private void btnStart_Click(object sender, EventArgs e) {
Start();
}
private void Start() {
for (int i = 0; i < vehicles.Count; i++) {
txtLicensePlate.Text = vehicles[i].LicensePlate;
}因此,点击“开始”按钮使txtLicensePlate文本框逐个显示汽车的车牌号码。但是,在从车牌号码开始之前,我希望for循环等待按钮单击。
private void btnDone_Click(object sender, EventArgs e) {
Add();
}我试图像这样调用事件处理程序:
private void Start() {
for (int i = 0; i < vehicles.Count; i++) {
txtLicensePlate.Text = vehicles[i].LicensePlate;
btnDone_Click(sender, e);
}但我收到了一条错误消息:“发送方和e在当前上下文中不存在”。另一方面,我似乎希望循环触发按钮,点击自己的按钮(这不是我的意图),这就引出了我的问题:
如何使for循环等待用户单击按钮?
编辑:似乎我引起了一些混乱,所以我想澄清:开始按钮将启动循环,显示第一个车牌号码。然后,用户可以“知道”当前的车辆是否将运行,如果它将运行多少公里。当用户单击“已完成”按钮时,车辆将增加公里数,并应显示下一个车牌号码。
发布于 2017-04-22 15:54:39
您应该调用PerformClick方法的Button。
也就是说,为什么不直接在Add方法的末尾调用Start方法呢?这就是你真正想要达到的目标,点击btnDone只是达到这个目的的一种方式,所以为什么不直接走到终点,而不是试图人为地调用这些手段呢?
https://stackoverflow.com/questions/43561279
复制相似问题