我正在使用 VSTO 和互操作命名空间有一段时间了。它的大部分部分都很好(足够)。但有时它接缝真的很荒谬。
有些方法返回一个对象,当很明显它们应该返回什么时,该对象必须被强制转换。
像这个例子一样添加一个新的工作表:
sheet = (Excel.Worksheet)application.ActiveWorkbook.Worksheets.Add(missing, application.ActiveWorkbook.ActiveSheet, 1, missing);
其他时候,您需要使用缺少的 Type 进行方法调用,因为它没有方法覆盖。(我知道这只是 C# 中的问题,而不是 VB 中的问题)
就像在这个例子中保护一个 excel 表一样:
sheet.Protect(missing, true, true, true, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing);
我现在的问题是:是否有任何类型的包装器、框架、api ......来避免所有这些小不便?(或任何提供一些更方便方法的框架)