为动态生成的控件添加响应事件

   之前的一个问题是通过动态加载控件的方式解决的,但在继续写代码的过程中发现,需要为这个控件添加一个响应事件。在查找网上资料加上自己尝试之后,发现解决方式为:

namespace Cube2
{
    public partial class AppForm : Form
    {
       
        private vtkFormsWindowControl vtkControl = null;
           

        public AppForm()
        {
            //初始化,仅用InitializeComponent()屏幕会花,干脆直接渲染为白色
            InitializeComponent();
            
            //动态加载vtkFormWindowControl
            vtkControl = new vtkFormsWindowControl 
            {
                Location = new Point(172, 27),
                Size = new System.Drawing.Size(698, 501),
                Name = "vtkControl",
                TabIndex = 3,
                BackColor = System.Drawing.Color.AliceBlue,
                Text = "vtkFormsWindowControl",
                Dock = DockStyle.Right,
                Anchor = AnchorStyles.Top & AnchorStyles.Left
            };            
            Controls.Add(vtkControl);     //动态加载vtkFormWindowControl
            this.vtkControl.Click += new EventHandler(vtkControl_Click);   //添加事件
            vtkRenderer ren = new vtkRenderer() ;
            vtkRenderWindow win = this.vtkControl.GetRenderWindow();
            ren.SetBackground(255 / 255.0, 255 / 255.0, 255 / 255.0);
            win.AddRenderer(ren);            
        }
        
            void vtkControl_Click(object sender, EventArgs e)
        {
              //code here
        }

 
     另外要说明的是,虽然网上的资料显示添加事件时的响应函数可以自己命名,但我尝试的过程中发现,只能使用“控件名_事件名”,也即 
vtkControl_Click才不会出现错误。 



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值