向工作表添加 ListObject 控件

在文档级项目中,你可以在设计时和运行时将 ListObject 控件添加到 Microsoft Office Excel 工作表。

适用于: 本主题中的信息适用于 Excel 的文档级项目和 VSTO 外接程序项目。 有关详细信息,请参阅办公室应用程序和项目类型提供的功能。

你也可以在 VSTO 外接程序项目中,在运行时添加 ListObject 控件。

本主题介绍了以下任务:

在设计时添加 ListObject 控件

有多种方法可在设计时在文档级项目中将 ListObject 控件添加到工作表:从 Excel、从 Visual Studio“工具箱” ,以及从“数据源” 窗口。

注意

以下说明中的某些 Visual Studio 用户界面元素在计算机上出现的名称或位置可能会不同。 这些元素取决于你所使用的 Visual Studio 版本和你所使用的设置。 有关详细信息,请参阅个性化设置 IDE

在 Excel 中使用功能区

  1. 在“插入” 选项卡上,单击“表” 组中的“表”

  2. 选择要包含在列表中的一个或多个单元格,然后单击“确定”

使用工具箱

  1. 从“工具箱” 的“Excel 控件” 选项卡上,拖动 ListObject 到工作表。

    “添加 ListObject 控件” 对话框随即出现。

  2. 选择要包含在列表中的一个或多个单元格,然后单击“确定”

    如果不希望保留默认名称,可以在“属性” 窗口中更改名称。

使用“数据源”窗口

  1. 打开“数据源” 窗口并为项目创建数据源。 有关详细信息,请参阅添加新连接

  2. 将表从“数据源” 窗口拖到工作表中。

    数据绑定 ListObject 控件将添加到工作表中。 有关详细信息,请参阅数据绑定和Windows 窗体

在文档级项目中的运行时添加 ListObject 控件

可以在运行时动态添加 ListObject 控件。 这使得你可以创建宿主控件以响应事件。 工作表关闭时,动态创建的列表对象不作为宿主控件保留在工作表中。 有关详细信息,请参阅在运行时向办公室文档添加控件。

以编程方式将 ListObject 控件添加到工作表中

  1. StartupSheet1事件处理程序中,插入下列代码以将 ListObject 控件添加到 A1A4单元格。

    Microsoft.Office.Tools.Excel.ListObject employeeData;
    employeeData = this.Controls.AddListObject(this.get_Range("$A$1:$D$4"), "employees");
    

在 VSTO 外接程序项目中的运行时添加 ListObject 控件

可以按编程方式将 ListObject 控件添加到 VSTO 外接程序项目中任何打开的工作表中。 工作表保存并关闭时,动态创建的列表对象不作为宿主控件保留在工作表中。 有关详细信息,请参阅 运行时在 VSTO 外接程序中扩展 Word 文档和 Excel 工作簿。

以编程方式将 ListObject 控件添加到工作表中

  1. 下面的代码将生成基于打开工作表的工作表宿主项,然后将 ListObject 控件添加到 A1A4单元格。

    private void AddListObject()
    {
        Worksheet worksheet = Globals.Factory.GetVstoObject(
            Globals.ThisAddIn.Application.ActiveWorkbook.Worksheets[1]);
    
        Microsoft.Office.Tools.Excel.ListObject list1;
        Excel.Range cell = worksheet.Range["$A$1:$D$4"];
        list1 = worksheet.Controls.AddListObject(cell, "list1");
    }