1. 程式人生 > >C# 如何向Excel添加、刪除表單控件

C# 如何向Excel添加、刪除表單控件

控件 單選 ofo void shee [] 材質 添加 free

在Excel中,添加的控件可以和單元格關聯,我們可以操作控件來修改單元格的內容,在下面的文章中,將介紹在Excel中添加幾種不同的表單控件的方法,包括:

  • 添加文本框
  • 單選按鈕
  • 復選框
  • 組合框

使用工具:Free Spire.XLS for .NET 8.3 (社區版)
PS:下載安裝該組件後,註意在項目程序中添加引用Spire.XLS.dll(dll文件可在安裝路徑下的Bin文件夾中獲取),如下圖所示
技術分享圖片

代碼示例:

  1. 插入Excel表單控件
    【C#】
using Spire.Xls;
using Spire.Xls.Core;
using System.Drawing;

namespace FormControls_XLS
{
    class Program
    {
        static void Main(string[] args)
        {
            //實例化一個Workbook類實例,並向工作簿中添加一個Worksheet
            Workbook workbook = new Workbook();
            Worksheet sheet = workbook.Worksheets[0];

            //插入文本框控件,設置文本框位置、大小、顏色以及對齊方式
            ITextBoxShape textBox = sheet.TextBoxes.AddTextBox(1, 1, 19, 65);
            textBox.Fill.ForeColor = Color.Green;
            //設置表格行高、列寬
            sheet.Range["A2:A3"].ColumnWidth = 30F;
            sheet.Range["A2:B11"].RowHeight = 20F;
           //添加文本框,設置對齊方式
            textBox.Text = "手機消費問卷調查";
            textBox.HAlignment = CommentHAlignType.Center;
            textBox.VAlignment = CommentVAlignType.Center;

            //插入單選按鈕,並指定到單元格位置
            sheet.Range["A3"].Text = "您的性別:";
            IRadioButton radioButton = sheet.RadioButtons.Add(3, 2, 20, 80);
            radioButton.CheckState = CheckState.Checked;
            radioButton.Text = "女";
            radioButton = sheet.RadioButtons.Add(3, 3, 20, 80);
            radioButton.Text = "男";

            //插入復選框並指定單元格位置
            sheet.Range["A5"].Text = "您所在行業:";
            ICheckBox checkBox = sheet.CheckBoxes.AddCheckBox(5, 2, 18, 65);
            checkBox.CheckState = CheckState.Checked;
            checkBox.Text = "教育";
            checkBox = sheet.CheckBoxes.AddCheckBox(5, 3, 18, 65);
            checkBox.Text = "醫療";
            checkBox = sheet.CheckBoxes.AddCheckBox(5, 4, 18, 65);
            checkBox.Text = "IT";
            checkBox = sheet.CheckBoxes.AddCheckBox(5, 5, 18, 65);
            checkBox.Text = "零售";
            checkBox = sheet.CheckBoxes.AddCheckBox(5, 6, 18, 65);
            checkBox.Text = "其他";

            sheet.Range["A7"].Text = "您對手機的外觀要求:";
            checkBox = sheet.CheckBoxes.AddCheckBox(7, 2, 18, 65);
            checkBox.CheckState = CheckState.Checked;
            checkBox.Text = "屏幕尺寸";
            checkBox = sheet.CheckBoxes.AddCheckBox(7, 3, 18, 65);
            checkBox.Text = "外觀材質";
            checkBox = sheet.CheckBoxes.AddCheckBox(7, 4, 18, 65);
            checkBox.CheckState = CheckState.Checked;
            checkBox.Text = "外觀顏色";

            //插入組合框,指定位置並設置關聯單元格
            sheet["A9"].Text = "您對手機的功能要求:";
            sheet["A10"].Text = "娛樂";
            sheet["A11"].Text = "商務";
            sheet["A12"].Text = "其他";
            IComboBoxShape comboBox = sheet.ComboBoxes.AddComboBox(9, 2, 18, 65);
            comboBox.ListFillRange = sheet["A10:A12"];
            comboBox.LinkedCell = sheet.Range["C9"];
            comboBox.SelectedIndex = 2;

            //保存並打開文檔
            workbook.SaveToFile("AddFormControls.xlsx", ExcelVersion.Version2010);
            System.Diagnostics.Process.Start("AddFormControls.xlsx");
        }
    }
}

運行該項目程序,生成文件(可在項目文件夾下bin>Debug下查看文檔)
技術分享圖片

  1. 刪除Excel表單控件
    【C#】
using Spire.Xls;

namespace RemoveFormControl_XLS
{
    class Program
    {
        static void Main(string[] args)
        {
            //創建Workbook實例,加載Excel文檔
            Workbook workbook = new Workbook();
            workbook.LoadFromFile("AddFormControls.xlsx");

            //獲取第一個工作表
            Worksheet sheet = workbook.Worksheets[0];

            //刪除工作表中所有的復選框
            for (int i = 0; i < sheet.CheckBoxes.Count; i++)
            {
                sheet.CheckBoxes[i].Remove();
            }

            //保存並打開文檔
            workbook.SaveToFile("RemoveCheckBoxes.xlsx", ExcelVersion.Version2010);
            System.Diagnostics.Process.Start("RemoveCheckBoxes.xlsx");
        }
    }
}

表單刪除效果:
技術分享圖片
以上是本次關於C#操作Excel表單控件的全部內容,

本文完

(如需轉載,請註明出處)

C# 如何向Excel添加、刪除表單控件