C#WinForm如何给控件的Click事件传送参数?
在动态创建窗体控件的时候定LableMyLink;for(inti=0;i<5;i++){ MyLink.Text="这里是连接:...
在动态创建窗体控件的时候定Lable MyLink;for(int i = 0; i < 5; i++){ MyLink.Text = "这里是连接:" + i; MyLink.Click += MyLinkClick; Controls.Add(MyLink);}MyLinkClick函数如下:private void MyLinkClick(object sender, EventArgs e){ MessageBox.Show("ShowText");}我想在点击Lable执行MyLinkClick函数执行的时候弹出不同的提示框信息,请问各位前辈怎么做。
展开
展开全部
//窗体启动时 自动加载5个Label
private void Form1_Load(object sender, EventArgs e)
{
Label myLink = null;
for (int i = 0; i < 5;i++ )
{
myLink = new Label();
myLink.Name = "label" + i;//为每个控件命名
myLink.Text = "这里是连接:" + i;//每个控件的显示名称
myLink.Location = new Point( 50, i * 30 + 50);//设置Label的位置,防止叠加到一起了
Controls.Add(myLink);//在窗体上添加控件
myLink.Click += new EventHandler(myLink_Click);//添加Label的单击事件
}
}
void myLink_Click(object sender, EventArgs e)
{
MessageBox.Show(((Label)sender).Text);//当单击Label时显示信息
}
private void Form1_Load(object sender, EventArgs e)
{
Label myLink = null;
for (int i = 0; i < 5;i++ )
{
myLink = new Label();
myLink.Name = "label" + i;//为每个控件命名
myLink.Text = "这里是连接:" + i;//每个控件的显示名称
myLink.Location = new Point( 50, i * 30 + 50);//设置Label的位置,防止叠加到一起了
Controls.Add(myLink);//在窗体上添加控件
myLink.Click += new EventHandler(myLink_Click);//添加Label的单击事件
}
}
void myLink_Click(object sender, EventArgs e)
{
MessageBox.Show(((Label)sender).Text);//当单击Label时显示信息
}
展开全部
click只能接受接受sender 和e这两个参数,但是
由于Label lbl=sender as Label
这样就可以获取到你所点击的Label,只要将参数赋值给Label的属性,就可以获取到。
由于Label lbl=sender as Label
这样就可以获取到你所点击的Label,只要将参数赋值给Label的属性,就可以获取到。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
主要是看你根据什么区分不同的提示框信息,其实在click事件中没有什么必要传参数,你可以定义一个全局变量,在click事件出发后,根据全局变量的值来区分提示框的信息
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
自己写绑定就可以啊!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询