![](/img/trans.png)
[英]How do I write code to a button which must fire on both events onclick and onclientclick simultaneously with single click
[英]How can I write the code for a this.label.Click to trigger two events?
这是我的代码
private void ScoreOnes_Click(object sender, EventArgs e)
{
this.ScoreOnes.Click += this.Roll_Click;
this.ScoreOnes.Click -= null;
}
ScoreOnes是一个标签,Roll是一个标签。 我想在同一时间单击ScoreOnes时触发Roll_Click,并使ScoreOnes无法点击。 如果我按照我编写代码的方式进行,我必须单击两次才能使ScoreOnes无法点击。 如果我这样做:
private void ScoreOnes_Click(object sender, EventArgs e)
{
this.ScoreOnes.Click -= null;
this.ScoreOnes.Click += this.Roll_Click;
}
ScoreOnes永远不会变得无法点击.....请指教
您的代码未触发Roll_Click
。 它连接事件侦听器,以便下一次 ScoreOnes
被点击, Roll_Click
将被调用。
至于无法点击,你的意思是残疾人吗? 或者它什么都不做?
如果你希望它在点击时什么都不做,你可以这样写:
bool scoreOnesDisabled;
private void ScoreOnes_Click(object sender, EventArgs e)
{
if (scoreOnesDisabled)
return;
this.Roll_Click(sender, e);
scoreOnesDisabled = true;
}
private void ScoreOnes_Click(object sender, EventArgs e)
{
Roll_Click(); //this fires the Roll_Click method
this.ScoreOnes.Enabled = False; // this makes ScoreOnes unclickable
}
在表单加载中连接Roll_Click事件处理程序
void frmQmsQuote_Edit_FormClosed(object sender, FormClosedEventArgs e)
{
this.ScoreOnes.Click += this.Roll_Click;
}
在ScoreOnes_Click事件处理程序中分离自我,所以它不会再次触发
private void ScoreOnes_Click(object sender, EventArgs e)
{
this.ScoreOnes.Click -= ScoreOnes_Click;
}
或者使用Jim VanPetten在其他答案中建议的禁用方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.