界面-C#如何动态new对象并选择执行方法

问题描述

C#如何动态new对象并选择执行方法

声明了A类,包含了x、y、z三个方法
声明了B类,包含了j、k、l三个方法
如何在界面做选项框选择A、B类,动态生成对象
并更新另一个选项框的内容为该对象的方法列表
然后选择方法执行
这个用C#如何实现呢?麻烦说详细些,谢谢

解决方案

这不就是反射干的活么

https://msdn.microsoft.com/zh-cn/library/ms173183(v=vs.120).aspx

解决方案二:

使用反射。
http://blog.csdn.net/educast/article/details/2894892

时间: 2024-10-13 13:20:03

界面-C#如何动态new对象并选择执行方法的相关文章

Java通过反射机制动态设置对象属性值的方法_java

/** * MethodName: getReflection<br> * Description:解析respXML 在通过反射设置对象属性值 * User: liqijing * Date:2015-7-19下午12:42:55 * @param clzzName * @param respXML * @return * @throws ClassNotFoundException * @throws DocumentException * @throws IllegalArgumentE

Python中动态获取对象的属性和方法的教程_python

首先通过一个例子来看一下本文中可能用到的对象和相关概念. #coding: UTF-8 import sys # 模块,sys指向这个模块对象 import inspect def foo(): pass # 函数,foo指向这个函数对象 class Cat(object): # 类,Cat指向这个类对象 def __init__(self, name='kitty'): self.name = name def sayHi(self): # 实例方法,sayHi指向这个方法对象,使用类或实例.

使用::std::vector&amp;lt;&amp;gt;作为管理动态数组的优先选择

摘要: 本文介绍了C++标准库中的容器类vector,分析了它的优点,并且建议在应用程序中使用它作为动态数组的优先选择,而不是MFC的CArray<>等其他类模板.最后介绍了vector的接口和使用时的注意事项. 在一些使用 MFC 的程序中,经常看到许多程序使用 CArray<>,由于 CArray<>的设计问题,造成使用它的代码的复杂化,增加了维护难度.因此建议使用 ::std::vector<> 代替 CArray<>. 另外,也看到一些程

UNIX下C++实现动态载入对象

VC里面实现动态对象载入已经不是什么新鲜事情了,很多的plug-in技术就是例子.Unix下,通过动态载入so获得一个对象也不是什么难事,不过对这个对象的管理就是一件比较麻烦的事情了.一般的需求如下:   有class TMyObj,准确说TMyObj应该是一个接口,根据不同具体情况会有不同的实现,例如 TMyObj1.TMyObj2等等--而这些TMyObj1和TMyObj2分别保存在不同的so当中,需要根据不同的时候load不同的so,建立相应的对象.由于这些对象都拥有TMyObj的接口,所

JQuery 动态扩展对象之另类视角_jquery

例如:有一个employee对象, 复制代码 代码如下: function employee(){ this.e_id = 0; this.e_name = ""; } 现在需要为它动态的新增"age"属性和"toString()"方法, 复制代码 代码如下: var empObj = new employee(); empObj["age"] = 20; empObj["toString"] = func

Groovy高效编程:动态改变对象的能力

从Groovy1.1beta-2开始,实现动态改变对象的能力变的十分简单: 一开始,我们有这样一个类: class Person { String name } 该类的实例都是哑巴,不能说话,作为造物主的我们该完善它们,使它们能自我介绍(添加实例方法):class Person { String name } // 添加自我介绍的行为 Person.metaClass.introduce << {println "I'm $name"} 现在让我们看看,它们到底是否真的能够

C++内存泄露,只是动态申请对象,然后delete就发生了内存泄露,真奇怪。

问题描述 C++内存泄露,只是动态申请对象,然后delete就发生了内存泄露,真奇怪. 今天写了个样例程序,程序主要是动态创建一个类的对象,存入list链表中,然后再把链表中的对象delete掉回收内存,理论上并不应该会产生内存泄露,但是从现象上来看确实是发生了内存泄露.程序启动后我分别在"创建对象前"."创建对象后"."释放对象内存后"三个阶段使用命令ps -aux|grep a.out查看了程序使用内存情况,发现在"释放对象内存后&

如何使用动态共享对象的模式来安装PHP_php基础

PHP 通常被安装在 Linux/Unix 操作系统上,并且搭配 Apache 服务器一起使用.在将 PHP 与 Apache 服务器一起安装的时候,你有三种不同的安装方式可以选择:静态模块,动态共享对象(Dynamic Shared Object, DSO)以及 CGI 程序执行文件.  在这里我建议大家使用动态共享对象的模式来安装 PHP,这是因为这种安装方式为日后的维护与升级提供了极大的便利.假设你一开始安装 PHP 的时候,只加入了PHP 的数据库相关模块.几天以后你决定再加装 PHP 

c++的问题-关于类的成员变量指向在堆上的对象的选择:指针/auto_ptr&amp;amp;lt;&amp;amp;gt;/shared_ptr&amp;amp;lt;&amp;amp;gt; ?

问题描述 关于类的成员变量指向在堆上的对象的选择:指针/auto_ptr<>/shared_ptr<> ? 在堆上的对象作为一个类的一个成员变量,我了解到的至少有三种方式(如下所示): class A{ } class B{ A* m_pA1; auto_ptrm_pA2: shared_ptrm_pA3: } B::B():m_pA1(new A)m_pA2(auto_ptr(new A))m_pA3(shared_ptr(new A)){ } 针对这三种方案,在什么情况下选择哪