想做通过获取数值后自动生成对应数量控件,如linklabel。之后在这么多个的linklable的有着内容大致相同的点击事件,只是其中有几个数值不同,变化的数值可以仅仅是linklable的不同的编号的值,不知道能不能实现?
具体如下图示意。麻烦各位高手编码示范下。
之后在文本框中输入3,点击确定按钮,软件就生成出3个linklable。
之后在每个linkLabel_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)方法中,包含一段仅仅是linklable的编号不同的代码。如,messagebox.show("点击了{0}",它的编号)。就这样。麻烦各位高手编码示范下。不是很懂。谢了。
具体如下图示意。麻烦各位高手编码示范下。
之后在文本框中输入3,点击确定按钮,软件就生成出3个linklable。
之后在每个linkLabel_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)方法中,包含一段仅仅是linklable的编号不同的代码。如,messagebox.show("点击了{0}",它的编号)。就这样。麻烦各位高手编码示范下。不是很懂。谢了。
Label lblTitle = new Label();
lblTitle.Text = value;
lblTitle.AutoSize = false;
lblTitle.TextAlign = ContentAlignment.MiddleRight;
lblTitle.Location = new System.Drawing.Point(3, formHeight);
lblTitle.Size = new Size(140,height);
panel1.Controls.Add(lblTitle);示例
private void button1_Click(object sender, EventArgs e)
{
int lCount = Convert.ToInt16(this.textBox1.Text);
for (int i = 0; i < lCount; i++)
{
LinkLabel ll = new LinkLabel();
ll.Text = i.ToString();
ll.Location = new Point(100, i * 50 + 100);
ll.Tag = i;
ll.LinkClicked += new LinkLabelLinkClickedEventHandler(ll_LinkClicked);
this.Controls.Add(ll);
}
} void ll_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
LinkLabel ll = (LinkLabel)sender;
MessageBox.Show(ll.Tag.ToString());
}
//LinkLabel的TAG属性为OBJECT类型,你可以放入任何你想要的类型,使用的时候在强制转换过来就可以了。
3Q牛人。确实可以用哈!!你到这个相同问题的贴子上露个脸(我发重复了问题),再给你加20分哈!
http://topic.csdn.net/u/20100927/13/cf692259-08de-49d8-a700-b01884503eed.html