我正在尝试编写一个函数,该函数返回一个字符串,该字符串表示当前在 Excel 中选择的对象类型。
现在,这就是我所拥有的:
public String GetExcelType(dynamic thing)
{
if(thing.GetType().GetProperty("ChartStyle") != null)
{
return "[CHART]";
}
else if (thing.GetType().GetProperty("Cells") != null)
{
return "[TABLE]";
}
return "[UNKNOWN]";
}
然后后来调用:
GetExcelType(oExcelApp.ActiveWindow.Selection);
问题是,它每次都返回“[UNKNOWN]”。
进一步混淆了这个问题,弹出一个调试会话,我们可以清楚地看到该对象具有有问题的属性(在本例中为“Cells”):
我dynamic.GetType().GetProperty("foo")
从其他几个问题中提取了一点(每个人似乎都同意这应该有效)但它似乎失败了,在这里。我究竟做错了什么?