如何在WPF上制作带有选定项目的Excel文件

本文关键字:项目 文件 Excel 作带 WPF | 更新日期: 2023-09-27 18:19:32

我正在尝试将日志文件保存为Excel。

我有EventInfo.cs文件:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
public class EventLogInfo
{
    public string Id { get; set; }     
    public string Camera { get; set; } 
    public string Device { get; set; }
    public Int16 Region { get; set; }
    public Int16 Event { get; set; }

有Id、Camera、Device、Region和Event Items。

我使用微软Visual C#.NET知识库文章中的"如何自动化Microsoft Excel",我可以这样做:

using System;
using System.Reflection;
namespace ExcelOutput  
public partial class ExcelOutput : Window
    {
        public ExcelOutput()
        {
            InitializeComponent();
        }

        private void Button_Click_1(object sender, RoutedEventArgs e)
        {
          try
            {
                //Start Excel and get Application object.
                //oXL = new Excel.Application();
                //oXL.Visible = false;
                //oXL.UserControl = false;
                //oXL.DisplayAlerts = false;
                oSheet.Cells[1, 1] = "Id";
                oSheet.Cells[1, 2] = "Camera";
                oSheet.Cells[1, 3] = "Device";
                oSheet.Cells[1, 4] = "Region";
                oSheet.Cells[1, 5] = "Event";

当我单击Excel输出按钮时,将创建Excel文件。但我想选择一些项目(Id、相机、设备、区域、事件)并保存为Excel。

选择项目的最佳方式是什么?如何对Excel文件中的选定项目进行排序?

如何在WPF上制作带有选定项目的Excel文件

由于您已经创建了Excel文件,您只需要将数据放在相应的单元格中;

if (InitializeExcel())
{
dynamic cell;
cell = oSheet.Cells[1, 1]; cell.Value = Id;
cell = oSheet.Cells[1, 2]; cell.Value = Camera;
.
.
.
}

等等。

我建议使用Open XML SDK。通过这种方式,您可以创建Excel文件,而无需安装Excel。它也更快。