您的位置:首页 > 其它

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

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

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才不会出现错误。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: