C#里怎么根据一个对象的名称来取得这个对象的属性

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#里怎么根据一个对象的名称来取得这个对象的属性相关的知识,希望对你有一定的参考价值。

就是我传入一个Form上有的一个对象的名称,从而来设置它的属性!
就是比如我Form上有一些文本对象,名称是L1->L6
我就想写一个方法传入一个string字符串,比如传入L1,那么我就对L1这个文本对象来进行操作(设置Text)

你可以取得form的controls,通过controls可以取到直接放在form上的控件。
如果你的label放在了别的容器中,你需要通过form的controls取到容器控件,在通过容器控件的controls属性来取得需要的控件。

以下是VB的类似代码,参考一下。思路一样,只是语法不同罢了。

For Each ctl As Control In ctrls
Select Case ctl.GetType.Name
Case GetType(TextBox).Name
errProvider.SetIconPadding(ctl, -18)
If (Not ctl.Tag Is Nothing) AndAlso ctl.Tag.ToString() = "EmailCheck" Then
AddHandler ctl.Validating, AddressOf EmailValidating
ElseIf (Not ctl.Tag Is Nothing) AndAlso ctl.Tag.ToString() = "FolderCheck" Then
AddHandler ctl.Validating, AddressOf DirValidating
Else
AddHandler ctl.Validating, AddressOf DataValidating
End If
Case GetType(ComboBox).Name
errProvider.SetIconPadding(ctl, -36)
AddHandler ctl.Validating, AddressOf DataValidating
Case Else
If ctl.Controls.Count > 0 Then
SetErrorProvider(ctl.Controls)
End If
End Select
Next
参考技术A 把控件放进HashTable,名称为键 参考技术B 可以遍历窗体上的控件,然后找到L1这个控件,然后可以进行设置 参考技术C atalentsoft - 已经回答了 参考技术D System.Reflection 第5个回答  2009-04-10 说的具体一些

c# winform如何取得一个区域的所有控件对象

我有一个pictureBox对象,然后在区域里会加入若干其他对象(如其他picturebox),想取得里面picturebox的名字(可能不止一个) 怎么获取里面的picturebox对象 注意:pictureBox不是容器,所以没有“子控件”

参考技术A 设pictureBox1为父控件 pictureBox2为子控件 //设置pictureBox1可以有子控件 this.pictureBox1.HasChildren = true; //设置pictureBox1在窗体中的位置 this.pictureBox1.Location = new System.Drawing.Point(38, 67); this.pictureBox1.Size = new System.Drawing.Size(236, 196); //设置pictureBox2的父控件为pictureBox1 this.pictureBox2.Parent = this.pictureBox1; //检索指定位置的子控件 //GetChildAtPoint获取制定位置的子控件 this.pictureBox2.Parent = this.pictureBox1; PictureBox[] ps = new PictureBox[10]; int i = 0; for (int x = 0; x < this.pictureBox1.Width; x++) for (int y = 0; y < this.pictureBox1.Height; y++) if(this.pictureBox1.GetChildAtPoint(new Point(x,y)) != null) ps[i] = new PictureBox(); ps[i] = (PictureBoxthis.pictureBox1.GetChildAtPoint(new Point(x, y)); i++;

以上是关于C#里怎么根据一个对象的名称来取得这个对象的属性的主要内容,如果未能解决你的问题,请参考以下文章

UG NX二次开发(C#)-Part-根据模型名称获取part的对象

UG NX二次开发(C#)-Part-根据模型名称获取part的对象

c#为啥实例化对象?啥情况下实例化对象?

C#开发的OpenRA的游戏主界面怎么样创建2

C#开发的OpenRA的游戏主界面怎么样创建2

在c#中,用soap调用webservice,发送消息并取得webservice方法里返回的内容,用http 的方法