C# 从Word文档中获取列表编号?

C# 从Word文档中获取列表编号?,c#,winforms,office-interop,C#,Winforms,Office Interop,我正在使用Microsoft.Office.Interop.Word解析Word 2010文档。我正在抓取每页上每个表格第一列中每个单元格的所有文本。然而,我遇到的问题是,当我得到文本时,它没有包括列表编号。例如,我的表格中的文本如下所示: 我的程序在文档中循环,并从第一列的每个单元格中获取文本。不过,我得到的不是“1.介绍”,而是“介绍”。下面是我得到的数据: 正如你所看到的,我没有得到列表编号,只有文本(即“简介”而不是“1.简介”) 下面是我用来获取数据的循环: //

我正在使用Microsoft.Office.Interop.Word解析Word 2010文档。我正在抓取每页上每个表格第一列中每个单元格的所有文本。然而,我遇到的问题是,当我得到文本时,它没有包括列表编号。例如,我的表格中的文本如下所示:

我的程序在文档中循环,并从第一列的每个单元格中获取文本。不过,我得到的不是“1.介绍”,而是“介绍”。下面是我得到的数据:

正如你所看到的,我没有得到列表编号,只有文本(即“简介”而不是“1.简介”)

下面是我用来获取数据的循环:

        // Loop through each table in the document, 
        // grab only text from cells in the first column
        // in each table.
        foreach (Table tb in docs.Tables)
        {
            for (int row = 1; row <= tb.Rows.Count; row++)
            {
                var cell = tb.Cell(row, 1);
                var text = cell.Range.Text;
                dt.Rows.Add(text);
            }
        }

…但我想不出确切的答案。

找到了答案。我必须获取ListString值:

        // Loop through each table in the document, 
        // grab only text from cells in the first column
        // in each table.
        foreach (Table tb in docs.Tables)
        {
            for (int row = 1; row <= tb.Rows.Count; row++)
            {
                var cell = tb.Cell(row, 1);
                var listNumber = cell.Range.ListFormat.ListString;
                var text = listNumber + " " + cell.Range.Text;

                dt.Rows.Add(text);
            }
        }
//循环浏览文档中的每个表,
//仅从第一列的单元格中获取文本
//在每张桌子上。
foreach(docs.Tables中的表tb)
{

对于(int row=1;row这些数字是列出的数字,对吗?我假设它们是。在文档中,它们只是为了形成一个大纲。就互操作而言,我不确定它们叫什么。我在想列表数字或大纲数字,但我不能确定术语。我希望当我从手机,号码也会来。但事实并非如此。他们被视为单独的,我不知道如何找到他们。
        // Loop through each table in the document, 
        // grab only text from cells in the first column
        // in each table.
        foreach (Table tb in docs.Tables)
        {
            for (int row = 1; row <= tb.Rows.Count; row++)
            {
                var cell = tb.Cell(row, 1);
                var listNumber = cell.Range.ListFormat.ListString;
                var text = listNumber + " " + cell.Range.Text;

                dt.Rows.Add(text);
            }
        }