c#的winform怎么根据控件的名字获取控件属性?

 我来答
月影儿格格
2018-04-05 · TA获得超过1.6万个赞
知道小有建树答主
回答量:66
采纳率:100%
帮助的人:1.9万
展开全部

这首先要看控件所在的Form类有没有实例化,若已经实例化,可以通过构造传参或委托的方式完成。

构造传参:将控件所在的Form类实例化对象作为参数传到你new的新Form中。

C#实现根据指定容器和控件名字获得控件的方法,在进行C#应用程序设计时有一定的借鉴价值。分享给大家供大家参考借鉴。具体实现方法如下:

功能代码如下:

1、/// <summary>

2、/// 根据指定容器和控件名字,获得控件

3、/// </summary>

4、/// <param name="obj">容器</param>

5、/// <param name="strControlName">控件名字</param>

6、/// <returns>控件</returns>

7、private object GetControlInstance(object obj,string strControlName)

8、{

9、IEnumerator Controls = null;//所有控件

10、Control c = null;//当前控件

11、Object cResult=null;//查找结果

12、if(obj.GetType() == this.GetType())//窗体

13、{

14、Controls = this.Controls.GetEnumerator();

15、}

16、else//控件

17、{

18、Controls = ((Control)obj).Controls.GetEnumerator();

19、}

20、while(Controls.MoveNext())//遍历操作

21、{

22、c = (Control)Controls.Current;//当前控件

23、if(c.HasChildren)//当前控件是个容器

24、{

25、cResult = GetControlInstance(c,strControlName);//递归查找

26、if(cResult==null)//当前容器中没有,跳出,继续查找

27、continue;

28、else//找到控件,返回

29、return cResult;

30}

31、else if(c.Name == strControlName)//不是容器,同时找到控件,返回

32、{

33、return c;

34、}

35、}

36、return null;//控件不存在

37、}

示例如下:

((Button) GetControlInstance(this,"button7")).BackColor = Color.Red;

((Button) GetControlInstance(this.groupBox4,"button7")).PerformClick();

C#是微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言。并定于在微软职业开发者论坛(PDC)上登台亮相。C#是微软公司研究员Anders Hejlsberg的最新成果。C#看起来与Java有着惊人的相似;它包括了诸如单一继承、接口、与Java几乎同样的语法和编译成中间代码再运行的过程。但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司 .NET windows网络框架的主角。

C#是一种安全的、稳定的、简单的、优雅的,由C和C++衍生出来的面向对象的编程语言。它在继承C和C++强大功能的同时去掉了一些它们的复杂特性(例如没有宏以及不允许多重继承)。C#综合了VB简单的可视化操作和C++的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.NET开发的首选语言。

C#是面向对象的编程语言。它使得程序员可以快速地编写各种基于MICROSOFT .NET平台的应用程序,MICROSOFT .NET提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域。

C#使得C++程序员可以高效的开发程序,且因可调用由 C/C++ 编写的本机原生函数,因此绝不损失C/C++原有的强大的功能。因为这种继承关系,C#与C/C++具有极大的相似性,熟悉类似语言的开发者可以很快的转向C#。

魏雪黎妆
2019-05-06 · TA获得超过3.7万个赞
知道大有可为答主
回答量:1.4万
采纳率:32%
帮助的人:636万
展开全部
单击你需要的控件或者右键你的控件选择属性,然后在右下角属性中找到事件,在事件中选择你需要的,双击空白处编写。系统会自己在设计器中添加对于该事件的引用。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式