C#WinForm如何给控件的Click事件传送参数?

在动态创建窗体控件的时候定LableMyLink;for(inti=0;i<5;i++){MyLink.Text="这里是连接:"+i;MyLink.Click+=MyL... 在动态创建窗体控件的时候定

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函数执行的时候弹出不同的提示框信息,请问各位前辈怎么做。
谢谢hibok2,但我不想提示Label.Text,我想单独显示另外一个动态的参数。
展开
 我来答
高山之澍93
2010-06-30 · TA获得超过237个赞
知道小有建树答主
回答量:83
采纳率:0%
帮助的人:103万
展开全部
首先一楼的回复应该是你想要的解决方案了.

我这里在啰唆两句.

private void MyLinkClick(object sender, EventArgs e)

这个里面的sender其实就是触发这个事件的源控件.
那么你在处理这个函数的时候就可以,通过强制类型转换.将他转换成你指定的类,然后在访问它.
Label lbl=(Label)sender;
MessageBox.Show(lbl.Name+""+lbl.Ttext);
等.通过这个原理,你可以将执行相同功能的代码的事件指向为通一个方法,这样就可以实现事件代码的重用了.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
无尽星空ljm
2010-06-30 · TA获得超过1793个赞
知道小有建树答主
回答量:441
采纳率:0%
帮助的人:0
展开全部
MessageBox.Show("ShowText");
改为
if (sender != null && sender is Label)
MessageBox.Show((sender as Label).Text);
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ddrddrddr2010
2010-06-30 · TA获得超过431个赞
知道小有建树答主
回答量:322
采纳率:0%
帮助的人:363万
展开全部
你每次点击的时候,对象不一样,如果你想显示另外一个动态的参数,你需要知道那个参数和你点击的对象有什么逻辑关系,找出逻辑关系,根据关系来显示。你这样一说,还需要补充条件才能给你回答
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Royler
2010-06-30 · TA获得超过104个赞
知道答主
回答量:170
采纳率:100%
帮助的人:81.6万
展开全部
private void MyLinkClick(object sender, EventArgs e)
{
for(int i = 0; i < 5; i++)
{
MessageBox.Show("这里是连接"+i);
}

}

这样就行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式