How can I know what Classes inherit from a Class or Interface?
本问题已经有最佳答案,请猛点这里访问。
我偶然发现了这个方法
1 | Clipboard.GetDataObject() |
它返回一个IDataObject,所以我认为(可能)已经有一个类在.NET框架中实现了IDataObject接口,但是我如何才能找到它?
一个接口的全部要点是您不必知道特定的类。只使用
1 | IDataObject myData = Clipboard.GetDataObject(); |
如果需要在Visual Studio中查找
在搜索框中键入"
展开结果,您将看到"派生类型"文件夹,该文件夹将为您提供答案。
如果您想知道接口后面的真实对象,可以使用:
1 2 3 | var obj = Clipboard.GetDataObject(); var str = obj.GetType().ToString(); //I tried in a Windows Forms project and the type behind it is"System.Windows.Forms.DataObject" |
但在这种情况下它没有多大价值(我想)。见@speying答案:)