240个label,点击进去输入个数,240个全是click事件,一个控件对应一个事件,就要写240个,有没有能少写点的方法,该怎么做
(PS:原本应该用textbox,领导给做成了label,改控件工作量太大,就只能用label硬着头皮继续)
240个label,点击进去输入个数,240个全是click事件,一个控件对应一个事件,就要写240个,有没有能少写点的方法,该怎么做
(PS:原本应该用textbox,领导给做成了label,改控件工作量太大,就只能用label硬着头皮继续)
事件都一样吗?一样后台遍历控件加上就行了,如果都有不同的处理逻辑只能是人工加了。。~
还有你的是桌面应用还是web应用?
/*private void LabelClick(object sender, EventArgs e) {
Label lb = (Label)sender;
MessageBox.Show(lb.Name + "\n" + lb.Text);
}*/
private void Form1_Load(object sender, EventArgs e)
{//form load的时候遍历遍历所有控件,判断是label就加click事件
foreach (Control c in this.Controls)
{
if (c.GetType().ToString() == "System.Windows.Forms.Label") c.Click += LabelClick;
}
}
private void LabelClick(object sender, EventArgs e) {
Label lb = (Label)sender;
txt = lb.Text;
db = lb.Name;////db 不知道是不是你需要的Name,如果是label显示的内容改为Text属性
bd = lb;
Form6 Form6 = new Form6();
Form6.TransfEvent += Form6_TransfEvent;
Form6.textBox1.Text = lb.Text;////////////////
Form6.ShowDialog();
}