总是让我烦恼的一件事是我在Visual Studio中看不到基类型。 我只是偶然发现了这个,因为我试图将System.Windows.Forms.MenuItem强制转换为System.Windows.Forms.Control
在eclipse中,“intellisense”(或其所谓的任何东西)在探索类的成员时向我展示了从中继承基类的每个成员。
在Visual Studio中,即使我使用Objectbrowser或帮助,我也看不到基类。
我找到的唯一解决方案是在运行时使用:
Console.WriteLine(obj.GetType.BaseType)
Console.WriteLine(obj.GetType.BaseType.BaseType)
Console.WriteLine(obj.GetType.BaseType.BaseType.BaseType)
...
直到我到达System.Object()。 有没有办法在设计时查询类的基类型树?
答案 0 :(得分:3)
您可以在对象浏览器中看到这一点;如果单击类型前面的(+)符号,则应该有一个名为“Base Types”的文件夹,您可以在其中浏览类型继承的类型以及它实现的任何接口。
有一个控制它的设置;在对象浏览器的工具栏中有一个设置工具菜单;确保选中“显示基本类型”。
答案 1 :(得分:2)
查看 - >课程视图
通常我只是在上下文菜单中执行“转到定义”。
答案 2 :(得分:1)
使用班级视图。按Ctrl + W,Ctrl + C.
课堂视图将向您展示基础类型和许多其他内容。
答案 3 :(得分:0)
在线文档/ MSDN为每个.NET类提供了这个
答案 4 :(得分:0)
对象浏览器列出了基本类型,接口和派生类型(或者它对我有用 - 它可能是许多附加组件中的一个......)
答案 5 :(得分:0)
您可以使用class view(ctrl + w,c)。对于不属于您自己的类型,您可以使用reflector。
答案 6 :(得分:0)
调试监视窗口时会告诉您基类是什么。
答案 7 :(得分:0)
Reflector是查看类层次结构的一个很好的工具,包括它的基类。
您不必拥有源代码,它也可以浏览框架中的所有内容。