我正在进行一个Openxml Excel处理项目。在某个类中,我有Row对象。 我能否仅使用Row对象获取此Row对象的当前电子表格?
您可以使用Row
实例的Parent
属性来导航到该行所属的Worksheet
。
以下MSDN Row类文章清楚地说明,Row
实例的唯一父元素是该行所属的SheetData
对象。
SheetData
对象的唯一可能的父对象是Worksheet
实例(请参见以下MSDN SheetData类文章以获取更多信息)。
示例:
以下示例显示了如何导航到给定Row
实例所属的Worksheet
。为方便起见,我创建了一个扩展方法:
public static class RowExtensionMethods
{
public static Worksheet GetWorksheet(this Row r)
{
if (r.Parent == null)
{
throw new InvalidOperationException("Row does not belong to sheetdata.");
}
if (r.Parent.Parent == null)
{
throw new InvalidOperationException("Row does not belong to worksheet.");
}
return (Worksheet)r.Parent.Parent;
}
}
// Then in your method use the extension method like so
public void YourMethod(Row r)
{
Worksheet w = r.GetWorksheet();
// Do something with the worksheet...
}