【发布时间】:2015-04-28 07:41:14
【问题描述】:
我正在尝试从 Excel 表中获取单元格名称,例如 A1,B1,A2,B2。
这是我的代码
object objCellText = Cells.GetType().InvokeMember("Item",
BindingFlags.GetProperty,null,Cells,
new object[] { RowIndex, ColIndex });
var CellText = objCellText.GetType().InvokeMember("Value",
BindingFlags.GetProperty, null, objCellText, null);
var CellName = objCellText.GetType().InvokeMember("Name",
BindingFlags.GetProperty, null, objCellText, null);
在代码中,Name 属性不起作用。
提前感谢您的帮助!
【问题讨论】:
-
你为什么使用反射而不是动态类型?使用
dynamic代替对象,这样你就可以写Cells.Item或cell.Value -
@Panagiotis Kanavos 我不仅要获取项目或值,还需要单元格背景颜色、字体样式等,所以我正在使用对象..
-
使用
dynamic也可以调用它们。添加它是为了使此类场景更容易和更快。 -
@Panagiotis Kanavos ..谢谢。
标签: c# excel late-binding