C#动态添加button按钮,并跳转给它赋值

2024-10-27 22:55:48
推荐回答(4个)
回答1:

       //By 

       //具体看代码吧,我已经帮你实现了。frmTest test = new frmTest();这个是一个窗体,有一个文本框和一个按钮。希望能够帮到你
       //定义一个按钮纵坐标
        private int buttonY = 0;
       //这个是窗体生成动态按钮的那个按钮事件
        private void button1_Click_1(object sender, EventArgs e)
        {
            var btnDynamic = new Button();
            btnDynamic.MouseMove += btnDynamic_MouseMove;
            //这里给新按钮定义坐标位置
            buttonY += btnDynamic.Height;
            //这里重新定位
            btnDynamic.Location = new Point(20, buttonY);
            this.Controls.Add(btnDynamic);
        }

        private void btnDynamic_MouseMove(object sender, MouseEventArgs e)
        {
            if (null != sender)
            {
                Button btn = (Button)sender;
                frmTest test = new frmTest();
                test.ButtonID = btn.Name;
                test.ShowDialog();
                btn.Text = test.ButtonName;
               
            }
        }
        
        //这个是frmTest窗体的后台代码
        
         public string ButtonID { get; set; }
        public string ButtonName { get; set; }

        private void button1_Click(object sender, EventArgs e)
        {
            ButtonName = txtButtonName.Text;
            this.Close();
        }

回答2:

动态添加Button :Button btn=new Button();this.Control.add(btn),可以动态加入btn的属性,和事件,还有位置,然后把btn的参数传递给新窗体,即可在新窗体中修改btn的文字(注意这种方式btn要设置为public)

回答3:

给你写了个,参考下.

回答4:

我的思路是自己做一个自定义控件,将按钮窗体添加好