从Xamarin.Forms中的对象获取BaseType

时间:2016-09-22 10:25:36

标签: c# xamarin xamarin.forms

我正在尝试查明object我的Page类型是否为GetType()。如果我要求ContentPage,我会得到TemplatedPage,这是Page的子类,它是VisualElement的子类(它同样是if(parentElement.GetType() == typeof(Page)) { // do something } 的子类等等。)

我目前的做法

BaseType

无效。现在,我尝试按C# : how do you obtain a class' base class?中显示的Type superClass = parentElement.GetType().BaseType; 。如果我这样做

System

我得到了

  

错误CS1061'Type'不包含'BaseType'的定义,也没有扩展方法'BaseType'接受类型'Type'的第一个参数(你是否缺少using指令或汇编引用?)< / p>

我包含了System.Reflection命名空间以及BaseType,但我仍然遇到此错误。是否可以在Xamarin.Forms中获取def foo(a, opts \\ []), do: opts

1 个答案:

答案 0 :(得分:2)

您应该能够使用is keyword检查出来。这将为你付出艰苦的努力。

所以喜欢:if (parentElement is Page) { DoStuffHere(); }