日期:2014-05-17  浏览次数:20833 次

C# 初级问题 控件Name的作用
// 
            // panel1
            // 
            this.panel1.BackgroundImage = global::TimerExample.Properties.Resources.d;
            this.panel1.Controls.Add(this.label1);
            this.panel1.Location = new System.Drawing.Point(27, 70);
            this.panel1.Name = "panel1";
            this.panel1.Size = new System.Drawing.Size(224, 160);
            this.panel1.TabIndex = 0;


这里panel1属性Name的作用是什么,在别处引用的是panel1,Name属性改为 this.panel1.Name = "csdn";在别处又不能用csdn,要Name干啥?

------解决方案--------------------
当你在操作一些动态获取某个节点下的所有某类控件时,你可以根据Name做一定的区分,不过这个理由有点牵强,倒是在WPF,如果你是通过前台xaml设计的控件,系统会根据Name初始化相应的控件,你在后台也可以通过Name引用相应的控件~
------解决方案--------------------
动态的不能直接引用,但可以根据name查找
this.Controls[name]
------解决方案--------------------
name不是必须的。也不一定和成员同名。

作用bd版说了,从Controls检索、删除,多个控件绑定一个事件区分它们等场合用起来比较方便